home *** CD-ROM | disk | FTP | other *** search
/ AmigActive 2 / AACD 2.iso / AACD / Magazine / UsingPDF / GhostScript / source / gs5.10 / vms.mak < prev    next >
Encoding:
Text File  |  1997-11-24  |  61.4 KB  |  2,246 lines

  1. $ ! Copyright (C) 1997 Aladdin Enterprises.
  2. $ ! All rights reserved.
  3. $ !
  4. $ ! This file is part of Aladdin Ghostscript.
  5. $ !
  6. $ ! Aladdin Ghostscript is distributed with NO WARRANTY OF ANY KIND.  No author
  7. $ ! or distributor accepts any responsibility for the consequences of using it,
  8. $ ! or for whether it serves any particular purpose or works at all, unless he
  9. $ ! or she says so in writing.  Refer to the Aladdin Ghostscript Free Public
  10. $ ! License (the "License") for full details.
  11. $ !
  12. $ ! Every copy of Aladdin Ghostscript must include a copy of the License,
  13. $ ! normally in a plain ASCII text file named PUBLIC.  The License grants you
  14. $ ! the right to copy, modify and redistribute Aladdin Ghostscript, but only
  15. $ ! under certain conditions described in the License.  Among other things, the
  16. $ ! License requires that the copyright notice and this notice be preserved on
  17. $ ! all copies.
  18. $ !
  19. $ !
  20. $ ! VMS "makefile" for Ghostscript.
  21. $ !
  22. $ WSO = "WRITE SYS$OUTPUT"
  23. $ ON ERROR THEN GOTO DONE
  24. $ ON CONTROL_Y THEN GOTO DONE
  25. $ !
  26. $ ! Version numbers.
  27. $ ! MINOR0 is different from MINOR only if MINOR is a single digit.
  28. $ !
  29. $ GS_VERSION_MAJOR = "5"
  30. $ GS_VERSION_MINOR = "10"
  31. $ GS_VERSION_MINOR0 = "10"
  32. $ ! Revision date: year x 10000 + month x 100 + day.
  33. $ GS_REVISIONDATE  = "19971123"
  34. $ ! Derived values
  35. $ GS_VERSION       = GS_VERSION_MAJOR + GS_VERSION_MINOR0
  36. $ GS_DOT_VERSION   = GS_VERSION_MAJOR + "." + GS_VERSION_MINOR
  37. $ GS_REVISION      = GS_VERSION
  38. $ JSRCDIR = "[.jpeg-6a]"
  39. $ JVERSION = 6
  40. $!!! PSRCDIR = "[.libpng-0_89c]"
  41. $!!! PVERSION = 89
  42. $ PSRCDIR = "[.libpng-0_96]"
  43. $ PVERSION = 96
  44. $ ZSRCDIR = "[.zlib-1_0_4]"
  45. $
  46. $ !
  47. $ ! Check input parameters
  48. $ !
  49. $ IF P1 .NES. "" .AND. P1 .NES. "DEBUG" .AND. P1 .NES. "LINK" .AND. -
  50.    P1 .NES. "BUILD" .AND. F$EXTRACT(0,5,P1) .NES. "FROM=" THEN -
  51.    GS_LIB_DEFAULT = P1
  52. $ IF P2 .NES. "" .AND. P2 .NES. "DEBUG" .AND. P2 .NES. "LINK" .AND. -
  53.    P2 .NES. "BUILD" .AND. F$EXTRACT(0,5,P2) .NES. "FROM=" THEN -
  54.    GS_LIB_DEFAULT = P2
  55. $ !
  56. $ IF P1 .NES. "DEBUG" .AND. P2 .NES. "DEBUG" THEN GOTO NODEBUG
  57. $ CC_QUAL = CC_QUAL + "/NOOPT/DEBUG"
  58. $ IF CC_DEF .NES. "" THEN CC_DEF= CC_DEF + ","
  59. $ CC_DEF= CC_DEF + "DEBUG"
  60. $ L_QUAL  = (L_QUAL-"/NOTRACEBACK") + "/DEBUG"
  61. $ !
  62. $ NODEBUG:
  63. $ IF CC_DEF .NES. "" THEN CC_QUAL= CC_QUAL + "/DEFINE=(" + CC_DEF + ")"
  64. $ If P1 .EQS. "LINK" .OR. P2 .EQS. "LINK" THEN GOTO LINK_ONLY
  65. $ If P1 .EQS. "BUILD" .OR. P2 .EQS. "BUILD" THEN GOTO BUILD_EXES
  66. $ FROM = ""
  67. $ IF F$EXTRACT(0,5,P1) .EQS. "FROM=" THEN FROM = F$EXTRACT(5,F$LENGTH(P1)-5,P1)
  68. $ IF F$EXTRACT(0,5,P2) .EQS. "FROM=" THEN FROM = F$EXTRACT(5,F$LENGTH(P2)-5,P2)
  69. $ INSREP = "INSERT"
  70. $ IF FROM .NES. "" THEN INSREP = "REPLACE"
  71. $ !
  72. $ !
  73. $ ! Compile and link genarch.c and then run it to create the arch.h header file
  74. $ !
  75. $ WSO "''CC_COMMAND'''CC_QUAL'/NOLIST/OBJECT=GENARCH.OBJ GENARCH.C"
  76. $ 'CC_COMMAND''CC_QUAL'/NOLIST/OBJECT=GENARCH.OBJ GENARCH.C
  77. $ LINK/NOMAP/EXE=GENARCH.EXE GENARCH.OBJ,RTL.OPT/OPT
  78. $ GENARCH = "$" + F$ENVIRONMENT("DEFAULT") + "GENARCH.EXE"
  79. $ GENARCH ARCH.H
  80. $ DELETE GENARCH.EXE.*,GENARCH.OBJ.*
  81. $ PURGE ARCH.H
  82. $ !
  83. $ !
  84. $ ! Compile and link echogs.c; define ECHOGS as a command
  85. $ !
  86. $ WSO "''CC_COMMAND'''CC_QUAL'/NOLIST/OBJECT=ECHOGS.OBJ ECHOGS.C"
  87. $ 'CC_COMMAND''CC_QUAL'/NOLIST/OBJECT=ECHOGS.OBJ ECHOGS.C
  88. $ LINK/NOMAP/EXE=ECHOGS.EXE ECHOGS.OBJ,RTL.OPT/OPT
  89. $ ECHOGS = "$" + F$ENVIRONMENT("DEFAULT") + "ECHOGS.EXE"
  90. $ DELETE ECHOGS.OBJ;*
  91. $ PURGE ECHOGS.EXE
  92. $ !
  93. $ !
  94. $ ! Compile and link genconf.c; define GENCONF as a command
  95. $ !
  96. $ WSO "''CC_COMMAND'''CC_QUAL/NOLIST/OBJECT=GENCONF.OBJ GENCONF.C"
  97. $ 'CC_COMMAND''CC_QUAL'/NOLIST/OBJECT=GENCONF.OBJ GENCONF.C
  98. $ LINK/NOMAP/EXE=GENCONF.EXE GENCONF.OBJ,RTL.OPT/OPT
  99. $ GENCONF = "$" + F$ENVIRONMENT("DEFAULT") + "GENCONF.EXE"
  100. $ DELETE GENCONF.OBJ;*
  101. $ PURGE GENCONF.EXE
  102. $ !
  103. $ !
  104. $ ! Create GSSETDEV.COM, GSSETMOD.COM, and GSADDMOD.COM.
  105. $ ! (These aren't distributed with the fileset because the .COM suffix
  106. $ ! causes certain development tools to treat them incorrectly.)
  107. $ !
  108. $ !
  109. $ OPEN/WRITE SETDEV GSSETDEV.COM
  110. $   WRITE SETDEV "$ echogs -w 'p1'.dev - -dev 'p1' -obj 'p2 'p3 'p4 'p5 'p6 'p7 'p8"
  111. $ CLOSE SETDEV
  112. $ !
  113. $ OPEN/WRITE SETMOD GSSETMOD.COM
  114. $   WRITE SETMOD "$ if p2 .nes. """""
  115. $   WRITE SETMOD "$ then"
  116. $   WRITE SETMOD "$   echogs -w 'p1'.dev - 'p2 'p3 'p4 'p5 'p6 'p7 'p8"
  117. $   WRITE SETMOD "$ else"
  118. $   WRITE SETMOD "$   echogs -w 'p1'.dev"
  119. $   WRITE SETMOD "$ endif"
  120. $ CLOSE SETMOD
  121. $ !
  122. $ OPEN/WRITE ADDMOD GSADDMOD.COM
  123. $   WRITE ADDMOD "$ if (p2 .nes. """") then echogs -a 'p1'.dev - 'p2 'p3 'p4 'p5 'p6 'p7 'p8"
  124. $ CLOSE ADDMOD
  125. $ !
  126. $ !
  127. $ ! Define SETDEV, SETMOD, ADDMOD as commands to execute GSSETDEV.COM,
  128. $ ! GSSETMOD.COM and GSADDMOD.COM respectively.  Those three command
  129. $ ! procedures make use of ECHOGS.EXE and the ECHOGS verb.
  130. $ !
  131. $ SETDEV = "@GSSETDEV.COM"
  132. $ SETMOD = "@GSSETMOD.COM"
  133. $ ADDMOD = "@GSADDMOD.COM"
  134. $ !
  135. $ !
  136. $ ! Build GCONFIG_.H
  137. $ !
  138. $ ECHOGS -w gconfig_.h #define HAVE_SYS_TIME_H
  139. $ !
  140. $ ! Build GCONFIGV.H
  141. $ !
  142. $ ECHOGS -w gconfigv.h #define USE_ASM 0
  143. $ ECHOGS -a gconfigv.h #define USE_FPU 1
  144. $ ECHOGS -a gconfigv.h #define EXTEND_NAMES 0
  145. $ !
  146. $ ! Now generate *.dev files
  147. $ !
  148. $ DEV_LIST_NAMES = "FEATURE_DEVS DEVICE_DEVS DEVICE_DEVS1 DEVICE_DEVS2 DEVICE_DEVS3 DEVICE_DEVS4 DEVICE_DEVS5 DEVICE_DEVS6 DEVICE_DEVS7 DEVICE_DEVS8 DEVICE_DEVS9 DEVICE_DEVS10 DEVICE_DEVS11 DEVICE_DEVS12 DEVICE_DEVS13 DEVICE_DEVS14 DEVICE_DEVS15"
  149. $ NDEV_MOD = 0
  150. $ DEV_MODULES = " "
  151. $ I = 0
  152. $ ON WARNING THEN GOTO NO_ACTION
  153. $ DEVS_OUTER:
  154. $   DEV_LIST = F$ELEMENT(I," ",DEV_LIST_NAMES)
  155. $   IF DEV_LIST .EQS. " " THEN GOTO DEVS_DONE
  156. $   I = I+1
  157. $   IF F$TYPE('DEV_LIST') .EQS. "" THEN GOTO DEVS_OUTER
  158. $   IF F$EDIT('DEV_LIST',"COLLAPSE") .EQS. "" THEN GOTO DEVS_OUTER
  159. $   J = 0
  160. $   DEVS_INNER:
  161. $     ACTION = F$ELEMENT(J," ",'DEV_LIST')
  162. $     IF ACTION .EQS. " " THEN GOTO DEVS_OUTER
  163. $     J = J+1
  164. $     ! Replace "." with "_"
  165. $     IF F$LOCATE(".",ACTION) .NE. F$LENGTH(ACTION) THEN -
  166. $       ACTION = F$ELEMENT(0,".",ACTION) + "_" + F$ELEMENT(1,".",ACTION)
  167. $     GOSUB 'ACTION'
  168. $   GOTO DEVS_INNER
  169. $ !
  170. $ DEVS_DONE:
  171. $ ON WARNING THEN CONTINUE
  172. $ !
  173. $ !
  174. $ ! And now build gconfig.h and gconfigf.h
  175. $ !
  176. $ GOSUB GCONFIG_H
  177. $ GOSUB GCONFIGF_H
  178. $ !
  179. $ DEV_MODULES = F$EDIT(DEV_MODULES,"TRIM")
  180. $ DEV_MODULES'NDEV_MOD' = F$EDIT(DEV_MODULES,"COMPRESS")
  181. $ IF F$LENGTH(DEV_MODULES'NDEV_MOD') .EQ. 0 THEN NDEV_MOD = NDEV_MOD - 1
  182. $ !
  183. $ ! Create an empty object library if compilation is started from the beginning.
  184. $ !
  185. $ IF FROM .EQS. "" THEN LIBRARY/CREATE GS.OLB
  186. $ !
  187. $ ! Now compile device modules found in the DEV_MODULES symbols
  188. $ !
  189. $ DEFDIR = F$PARSE(F$ENVIRONMENT("DEFAULT"),,,"DIRECTORY","SYNTAX_ONLY")
  190. $ OPEN/WRITE OPT_FILE GS.OPT
  191. $ OPT_LINE = "GS.OLB/LIBRARY/INCLUDE=("
  192. $ COMMA = ""
  193. $ !
  194. $ I = 0
  195. $ IDEV = 0
  196. $ OUTER_DEV_LOOP:
  197. $ DEV_MODULES = F$EDIT(DEV_MODULES'IDEV',"TRIM")
  198. $ COMPILE_LOOP:
  199. $   MODULE = F$ELEMENT(I," ",DEV_MODULES)
  200. $   IF MODULE .EQS. " " THEN GOTO END_COMPILE
  201. $   I = I + 1
  202. $   NAME = F$PARSE(MODULE,,,"NAME","SYNTAX_ONLY")
  203. $   IF NAME .EQS. FROM THEN FROM= ""
  204. $   IF FROM .NES. "" THEN GOTO MOD_COMPILED
  205. $   DIR  = F$PARSE(MODULE,,,"DIRECTORY","SYNTAX_ONLY") - DEFDIR
  206. $   IF DIR .NES. ""
  207. $   THEN
  208. $     COPY 'MODULE'.C []
  209. $     INC = "/INCLUDE=(''DEFDIR',''DIR')"
  210. $   ELSE
  211. $     INC = ""
  212. $   ENDIF
  213. $   WSO "''CC_COMMAND'''CC_QUAL'''INC'/NOLIST/OBJECT=''NAME'.OBJ ''MODULE'.C"
  214. $   'CC_COMMAND''CC_QUAL''INC'/NOLIST/OBJECT='NAME'.OBJ 'NAME'.C
  215. $   LIBRARY/'INSREP' GS.OLB 'NAME'.OBJ
  216. $   DELETE 'NAME'.OBJ.*
  217. $   IF DIR .NES. "" THEN DELETE 'NAME'.C;
  218. $ MOD_COMPILED:
  219. $   IF F$LENGTH(OPT_LINE) .GE. 70
  220. $   THEN
  221. $     OPT_LINE = OPT_LINE + COMMA + "-"
  222. $     WRITE OPT_FILE OPT_LINE
  223. $     OPT_LINE = NAME
  224. $   ELSE
  225. $     OPT_LINE = OPT_LINE + COMMA + NAME
  226. $   ENDIF
  227. $   COMMA = ","
  228. $ GOTO COMPILE_LOOP
  229. $ !
  230. $ END_COMPILE:
  231. $ I = 0
  232. $ IDEV = IDEV + 1
  233. $ IF IDEV .LE. NDEV_MOD THEN GOTO OUTER_DEV_LOOP
  234. $ !
  235. $ OPT_LINE = OPT_LINE + ")"
  236. $ WRITE OPT_FILE OPT_LINE
  237. $ IF F$SEARCH("SYS$SHARE:DECW$XMLIBSHR12.EXE") .NES. ""
  238. $ THEN
  239. $   WRITE OPT_FILE "SYS$SHARE:DECW$XMLIBSHR12.EXE/SHARE"
  240. $   WRITE OPT_FILE "SYS$SHARE:DECW$XTLIBSHRR5.EXE/SHARE"
  241. $   WRITE OPT_FILE "SYS$SHARE:DECW$XLIBSHR.EXE/SHARE"
  242. $ ELSE
  243. $   WRITE OPT_FILE "SYS$SHARE:DECW$XMLIBSHR.EXE/SHARE"
  244. $   WRITE OPT_FILE "SYS$SHARE:DECW$XTSHR.EXE/SHARE"
  245. $   WRITE OPT_FILE "SYS$SHARE:DECW$XLIBSHR.EXE/SHARE"
  246. $ ENDIF
  247. $ WRITE OPT_FILE "Ident=""gs ''GS_DOT_VERSION'"""
  248. $ CLOSE OPT_FILE
  249. $ !
  250. $ !
  251. $ ! Is the DECwindows environment about?  Must be installed in order to
  252. $ ! build the executable program gs.exe.
  253. $ !
  254. $ IF F$SEARCH("SYS$SHARE:DECW$XLIBSHR.EXE") .NES. "" THEN GOTO CHECK2
  255. $ WSO "DECwindows user environment not installed;"
  256. $ WSO "unable to build executable programs."
  257. $ GOTO DONE
  258. $ !
  259. $ CHECK2:
  260. $ IF F$TRNLNM("DECW$INCLUDE") .NES. "" THEN GOTO BUILD_EXES
  261. $ WSO "You must invoke @DECW$STARTUP before using this"
  262. $ WSO "command procedure to build the executable programs."
  263. $ GOTO DONE
  264. $ !
  265. $ ! Build the executables
  266. $ !
  267. $ BUILD_EXES:
  268. $ !
  269. $ DEFINE X11 DECW$INCLUDE
  270. $ !
  271. $ LINK_ONLY:
  272. $ WSO "''CC_COMMAND'''CC_QUAL'/NOLIST/OBJECT=GCONFIG.OBJ GCONF.C"
  273. $ 'CC_COMMAND''CC_QUAL/NOLIST/OBJECT=GCONFIG.OBJ GCONF.C
  274. $ !
  275. $ WSO "''CC_COMMAND'''CC_QUAL'/NOLIST/OBJECT=ICONFIG.OBJ ICONF.C"
  276. $ 'CC_COMMAND''CC_QUAL/NOLIST/OBJECT=ICONFIG.OBJ ICONF.C
  277. $ !
  278. $ WSO "''CC_COMMAND'''CC_QUAL'/NOLIST/OBJECT=ICCINIT0.OBJ ICCINIT0.C"
  279. $ 'CC_COMMAND''CC_QUAL/NOLIST/OBJECT=ICCINIT0.OBJ ICCINIT0.C
  280. $ !
  281. $ WSO "''CC_COMMAND'''CC_QUAL'/NOLIST/OBJECT=GSCDEFS.OBJ GSCDEF.C"
  282. $ 'CC_COMMAND''CC_QUAL/NOLIST/OBJECT=GSCDEFS.OBJ GSCDEF.C
  283. $ !
  284. $ WSO "''CC_COMMAND'''CC_QUAL'/NOLIST/OBJECT=GS.OBJ GS.C"
  285. $ 'CC_COMMAND''CC_QUAL/NOLIST/OBJECT=GS.OBJ GS.C
  286. $ !
  287. $ WSO "Linking ... "
  288. $ WSO "LINK''L_QUAL'/NOMAP/EXE=GS.EXE GS,GCONFIG,ICONFIG,ICCINIT0,GSCDEFS,GS.OPT/OPT"
  289. $ LINK'L_QUAL/NOMAP/EXE=GS.EXE GS,GCONFIG,ICONFIG,ICCINIT0,GSCDEFS,GS.OPT/OPT
  290. $ !
  291. $ IF P1 .EQS. "LINK" THEN GOTO AFTER_DEL
  292. $ DELETE GS.OBJ.*,GCONFIG.OBJ.*,ICONFIG.OBJ.*,ICCINIT0.OBJ.*,GSCDEFS.OBJ.*
  293. $ !
  294. $ GOTO DONE
  295. $ !
  296. $ !
  297. $ DEVS_TR:
  298. $ ! quote the dashes so that they are not interpreted as continuation
  299. $ ! marks when the following DCL symbol is not defined!
  300. $   ECHOGS -w devs.tr "-" -include vms_.dev
  301. $   ECHOGS -a devs.tr "-" 'FEATURE_DEVS'
  302. $   ECHOGS -a devs.tr "-" 'DEVICE_DEVS'
  303. $   ECHOGS -a devs.tr "-" 'DEVICE_DEVS1'
  304. $   ECHOGS -a devs.tr "-" 'DEVICE_DEVS2'
  305. $   ECHOGS -a devs.tr "-" 'DEVICE_DEVS3'
  306. $   ECHOGS -a devs.tr "-" 'DEVICE_DEVS4'
  307. $   ECHOGS -a devs.tr "-" 'DEVICE_DEVS5'
  308. $   ECHOGS -a devs.tr "-" 'DEVICE_DEVS6'
  309. $   ECHOGS -a devs.tr "-" 'DEVICE_DEVS7'
  310. $   ECHOGS -a devs.tr "-" 'DEVICE_DEVS8'
  311. $   ECHOGS -a devs.tr "-" 'DEVICE_DEVS9'
  312. $   ECHOGS -a devs.tr "-" 'DEVICE_DEVS10'
  313. $   ECHOGS -a devs.tr "-" 'DEVICE_DEVS11'
  314. $   ECHOGS -a devs.tr "-" 'DEVICE_DEVS12'
  315. $   ECHOGS -a devs.tr "-" 'DEVICE_DEVS13'
  316. $   ECHOGS -a devs.tr "-" 'DEVICE_DEVS14'
  317. $   ECHOGS -a devs.tr "-" 'DEVICE_DEVS15'
  318. $   RETURN
  319. $ !
  320. $ GCONFIG_H:
  321. $   GOSUB DEVS_TR
  322. $   GOSUB VMS_DEV
  323. $   GOSUB LIBCORE_DEV
  324. $   GENCONF "devs.tr" libcore.dev -h gconfig.h
  325. $   ECHOGS -a gconfig.h "#define GS_LIB_DEFAULT ""''GS_LIB_DEFAULT'"""
  326. $   ECHOGS -a gconfig.h "#define SEARCH_HERE_FIRST ''SEARCH_HERE_FIRST'"
  327. $   ECHOGS -a gconfig.h "#define GS_DOCDIR ""''GS_DOCDIR'"""
  328. $   ECHOGS -a gconfig.h "#define GS_INIT ""''GS_INIT'"""
  329. $   ECHOGS -a gconfig.h "#define GS_REVISION ''GS_REVISION'"
  330. $   ECHOGS -a gconfig.h "#define GS_REVISIONDATE ''GS_REVISIONDATE'"
  331. $   RETURN
  332. $ !
  333. $ BBOX_DEV:
  334. $   SETMOD bbox "gdevbbox.obj"
  335. $   ADD_DEV_MODULES = "gdevbbox.obj"
  336. $   GOSUB ADD_DEV_MOD
  337. $   RETURN
  338. $ !
  339. $! The render/RGB device is only here as an example, but we can configure
  340. $! it as a real device for testing.
  341. $ RRGB_DEV:
  342. $   SETDEV rrgb "gdevrrgb.obj"
  343. $   ADD_DEV_MODULES = "gdevrrgb.obj gdevprn.obj"
  344. $   GOSUB ADD_DEV_MOD
  345. $   RETURN
  346. $ !
  347. $ LIBS_DEV:
  348. $   LIB1s = "gsalloc.obj gsbitops.obj gsbittab.obj"
  349. $   LIB2s = "gschar.obj gscolor.obj gscoord.obj gsdevice.obj gsdevmem.obj"
  350. $   LIB3s = "gsdparam.obj gsfont.obj gsht.obj gshtscr.obj"
  351. $   LIB4s = "gsimage.obj gsimpath.obj gsinit.obj gsiodev.obj"
  352. $   LIB5s = "gsline.obj gsmatrix.obj gsmemory.obj gsmisc.obj"
  353. $   LIB6s = "gspaint.obj gsparam.obj gspath.obj gsstate.obj gsutil.obj"
  354. $   LIBs  = "''LIB1s' ''LIB2s' ''LIB3s' ''LIB4s' ''LIB5s' ''LIB6s'"
  355. $   echogs -w libs.dev 'LIB1s'
  356. $   echogs -a libs.dev 'LIB2s'
  357. $   echogs -a libs.dev 'LIB3s'
  358. $   echogs -a libs.dev 'LIB4s'
  359. $   echogs -a libs.dev 'LIB5s'
  360. $   echogs -a libs.dev 'LIB6s'
  361. $   ADDMOD libs -init gscolor
  362. $   ADD_DEV_MODULES = "''LIBs'"
  363. $   GOSUB ADD_DEV_MOD
  364. $   RETURN
  365. $ !
  366. $ LIBX_DEV:
  367. $   LIB1x = "gxacpath.obj gxbcache.obj"
  368. $   LIB2x = "gxccache.obj gxccman.obj gxcht.obj gxcmap.obj gxcpath.obj"
  369. $   LIB3x = "gxdcconv.obj gxdcolor.obj gxdither.obj gxfill.obj gxht.obj"
  370. $   LIB4x = "gximage.obj gximage0.obj gximage1.obj gximage2.obj"
  371. $   LIB5x = "gxpaint.obj gxpath.obj gxpath2.obj gxpcopy.obj"
  372. $   LIB6x = "gxpdash.obj gxpflat.obj gxsample.obj gxstroke.obj"
  373. $   LIBx  = "''LIB1x' ''LIB2x' ''LIB3x' ''LIB4x' ''LIB5x' ''LIB6x'"
  374. $   echogs -w libx.dev 'LIB1x'
  375. $   echogs -a libx.dev 'LIB2x'
  376. $   echogs -a libx.dev 'LIB3x'
  377. $   echogs -a libx.dev 'LIB4x'
  378. $   echogs -a libx.dev 'LIB5x'
  379. $   echogs -a libx.dev 'LIB6x'
  380. $   addmod libx -init gximage1 gximage2
  381. $   ADD_DEV_MODULES = "''LIBx'"
  382. $   GOSUB ADD_DEV_MOD
  383. $   RETURN
  384. $ !
  385. $ LIBD_DEV:
  386. $   LIB1d = "gdevabuf.obj gdevddrw.obj gdevdflt.obj gdevnfwd.obj"
  387. $   LIB2d = "gdevmem.obj gdevm1.obj gdevm2.obj gdevm4.obj gdevm8.obj"
  388. $   LIB3d = "gdevm16.obj gdevm24.obj gdevm32.obj gdevmpla.obj"
  389. $   LIBd  = "''LIB1d' ''LIB2d' ''LIB3d'"
  390. $   echogs -w libd.dev 'LIB1d'
  391. $   echogs -a libd.dev 'LIB2d'
  392. $   echogs -a libd.dev 'LIB3d'
  393. $   ADD_DEV_MODULES = "''LIBd'"
  394. $   GOSUB ADD_DEV_MOD
  395. $   RETURN
  396. $ !
  397. $ LIBCORE_DEV:
  398. $   GOSUB LIBS_DEV
  399. $   GOSUB LIBX_DEV
  400. $   GOSUB LIBD_DEV
  401. $   GOSUB ISCALE_DEV
  402. $   GOSUB ROPLIB_DEV
  403. $   SETMOD libcore
  404. $   ADDMOD libcore -dev nullpage
  405. $   ADDMOD libcore -include libs libx libd iscale roplib
  406. $   RETURN
  407. $ !
  408. $! ---------------- File streams ---------------- #
  409. $ SFILE_DEV:
  410. $   sfile_="sfx''FILE_IMPLEMENTATION'.obj stream.obj"
  411. $   SETMOD sfile "''sfile_'"
  412. $   ADD_DEV_MODULES = "''sfile_'"
  413. $   GOSUB ADD_DEV_MOD
  414. $   RETURN
  415. $ !
  416. $ CFE_DEV:
  417. $   IF F$TYPE(cfe_) .NES. "" THEN RETURN
  418. $   cfe_ = "scfe.obj scfetab.obj shc.obj"
  419. $   SETMOD cfe 'cfe_'
  420. $   ADD_DEV_MODULES = "''cfe_'"
  421. $   GOSUB ADD_DEV_MOD
  422. $   RETURN
  423. $ !
  424. $ CFD_DEV:
  425. $   IF F$TYPE(cfd_) .NES. "" THEN RETURN
  426. $   cfd_ = "scfd.obj scfdtab.obj"
  427. $   SETMOD cfd 'cfd_'
  428. $   ADD_DEV_MODULES = "''cfd_'"
  429. $   GOSUB ADD_DEV_MOD
  430. $   RETURN
  431. $ !
  432. $! ---------------- DCT (JPEG) filters ---------------- #
  433. $! These are used by Level 2, and by the JPEG-writing driver.
  434. $! Encoding (compression)
  435. $ SDCTE_DEV: 
  436. $   IF F$TYPE(sdcte_) .NES. "" THEN RETURN
  437. $   sdcte_ = "sdctc.obj sjpegc.obj sdcte.obj sjpege.obj"
  438. $   GOSUB JPEGE_DEV
  439. $   SETMOD sdcte 'sdcte_'
  440. $   ADDMOD sdcte -include jpege
  441. $   ADD_DEV_MODULES = "''sdcte_'"
  442. $   GOSUB ADD_DEV_MOD
  443. $   RETURN
  444. $ !
  445. $! Decoding (decompression)
  446. $ SDCTD_DEV:
  447. $   IF F$TYPE(sdctd_) .NES. "" THEN RETURN
  448. $   sdctd_="sdctc.obj sjpegc.obj sdctd.obj sjpegd.obj"
  449. $   GOSUB JPEGD_DEV
  450. $   SETMOD sdctd 'sdctd_'
  451. $   ADDMOD sdctd -include jpegd
  452. $   ADD_DEV_MODULES = "''sdctd_'"
  453. $   GOSUB ADD_DEV_MOD
  454. $   RETURN
  455. $ !
  456. $! ---------------- LZW filters ---------------- #
  457. $! These are used by Level 2 in general.
  458. $ LZWE_DEV:
  459. $   IF F$TYPE(lzwe_) .NES. "" THEN RETURN
  460. $   lzwe_ = "slzwce.obj slzwc.obj"
  461. $   SETMOD lzwe 'lzwe_'
  462. $   ADD_DEV_MODULES = "''lzwe_'"
  463. $   GOSUB ADD_DEV_MOD
  464. $   RETURN
  465. $ !
  466. $ SLZWE_DEV:
  467. $   COPY LZWE.DEV SLZWE.DEV
  468. $   RETURN
  469. $ !
  470. $ LZWD_DEV:
  471. $   IF F$TYPE(lzwd_) .NES. "" THEN RETURN
  472. $   lzwd_ = "slzwd.obj slzwc.obj"
  473. $   SETMOD lzwd 'lzwd_'
  474. $   ADD_DEV_MODULES = "''lzwd_'"
  475. $   GOSUB ADD_DEV_MOD
  476. $   RETURN
  477. $ !
  478. $ SLZWD_DEV:
  479. $   COPY LZWD.DEV SLZWD.DEV
  480. $   RETURN
  481. $ !
  482. $ PCXD_DEV:
  483. $   pcxd_ = "spcxd.obj"
  484. $   SETMOD pcxd 'pcxd_'
  485. $   ADD_DEV_MODULES = "''pcxd_'"
  486. $   GOSUB ADD_DEV_MOD
  487. $   RETURN
  488. $ !
  489. $ PDIFF_DEV:
  490. $   pdiff_  = "spdiff.obj"
  491. $   SETMOD pdiff 'pdiff_'
  492. $   ADD_DEV_MODULES = "''pdiff_'"
  493. $   GOSUB ADD_DEV_MOD
  494. $   RETURN
  495. $ !
  496. $ PNGP_DEV:
  497. $   pngp_ = "spngp.obj"
  498. $   SETMOD pngp 'pngp_'
  499. $   ADD_DEV_MODULES = "''pngp_'"
  500. $   GOSUB ADD_DEV_MOD
  501. $   RETURN
  502. $ !
  503. $ RLE_DEV:
  504. $   IF F$TYPE(rle_) .NES. "" THEN RETURN
  505. $   rle_ = "srle.obj"
  506. $   SETMOD rle 'rle_'
  507. $   ADD_DEV_MODULES = "''rle_'"
  508. $   GOSUB ADD_DEV_MOD
  509. $   RETURN
  510. $ !
  511. $ RLD_DEV:
  512. $   IF F$TYPE(rld_) .NES. "" THEN RETURN
  513. $   rld_ = "srld.obj"
  514. $   SETMOD rld 'rld_'
  515. $   ADD_DEV_MODULES = "''rld_'"
  516. $   GOSUB ADD_DEV_MOD
  517. $   RETURN
  518. $ !
  519. $ SZLIBE_DEV:
  520. $   IF F$TYPE(szlibe_) .NES. "" THEN RETURN
  521. $   szlibe_ = "szlibc.obj szlibe.obj"
  522. $   GOSUB ZLIBE_DEV
  523. $   SETMOD szlibe 'szlibe_'
  524. $   ADDMOD szlibe -include zlibe
  525. $   ADD_DEV_MODULES = "''szlibe_'"
  526. $   GOSUB ADD_DEV_MOD
  527. $   RETURN
  528. $ !
  529. $ SZLIBD_DEV:
  530. $   IF F$TYPE(szlibd_) .NES. "" THEN RETURN
  531. $   szlibd_ = "szlibc.obj szlibd.obj"
  532. $   GOSUB ZLIBD_DEV
  533. $   SETMOD szlibd 'szlibd_'
  534. $   ADDMOD szlibd -include zlibd
  535. $   ADD_DEV_MODULES = "''szlibd_'"
  536. $   GOSUB ADD_DEV_MOD
  537. $   RETURN
  538. $ !
  539. $! Command list package.  Currently the higher-level facilities are required,
  540. $! but eventually they will be optional.
  541. $ CLIST_DEV:
  542. $   IF F$TYPE(CLIST_DONE) .NES. "" THEN RETURN
  543. $   GOSUB CLBASE_DEV
  544. $   GOSUB CLPATH_DEV
  545. $   SETMOD clist -include clbase clpath
  546. $   CLIST_DONE = 1
  547. $   RETURN
  548. $ !
  549. $! Base command list facility
  550. $ CLBASE_DEV:
  551. $   IF F$TYPE(clbase_) .NES. "" THEN RETURN
  552. $   clbase1_ = "gxclist.obj gxclbits.obj gxclpage.obj"
  553. $   clbase2_ = "gxclread.obj gxclrect.obj stream.obj"
  554. $   clbase_ = "''clbase1_' ''clbase2_'"
  555. $   GOSUB CL'BAND_LIST_STORAGE'_DEV
  556. $   GOSUB CFE_DEV
  557. $   GOSUB CFD_DEV
  558. $   GOSUB RLE_DEV
  559. $   GOSUB RLD_DEV
  560. $   SETMOD clbase 'clbase1_'
  561. $   ADDMOD clbase -obj 'clbase2_'
  562. $   ADDMOD clbase -include cl'BAND_LIST_STORAGE' cfe cfd rle rld
  563. $   ADD_DEV_MODULES = "''clbase_'"
  564. $   GOSUB ADD_DEV_MOD
  565. $   RETURN
  566. $ !
  567. $! Higher-level command list facilities.
  568. $ CLPATH_DEV:
  569. $   IF F$TYPE(clpath_) .NES. "" THEN RETURN
  570. $   clpath_ = "gxclimag.obj gxclpath.obj"
  571. $   GOSUB PSL2CS_DEV
  572. $   SETMOD clpath 'clpath_'
  573. $   ADDMOD clpath -include psl2cs
  574. $   ADDMOD clpath -init climag clpath
  575. $   ADD_DEV_MODULES = "''clpath_'"
  576. $   GOSUB ADD_DEV_MOD
  577. $   RETURN
  578. $ !
  579. $ CLFILE_DEV:
  580. $   IF F$TYPE(clfile_) .NES. "" THEN RETURN
  581. $   clfile_ = "gxclfile.obj"
  582. $   SETMOD clfile 'clfile_'
  583. $   ADD_DEV_MODULES = "''clfile_'"
  584. $   GOSUB ADD_DEV_MOD
  585. $   RETURN
  586. $ !
  587. $ CLMEMORY_DEV:
  588. $   IF F$TYPE(clmemory_) .NES. "" THEN RETURN
  589. $   clmemory_ = "gxclmem.obj gxcl'BAND_LIST_COMPRESSOR'.obj"
  590. $   GOSUB S'BAND_LIST_COMPRESSOR'E_DEV
  591. $   GOSUB S'BAND_LIST_COMPRESSOR'D_DEV
  592. $   SETMOD clmemory 'clmemory_'
  593. $   ADDMOD clmemory -include S'BAND_LIST_COMPRESSOR'E S'BAND_LIST_COMPRESSOR'D
  594. $   ADDMOD clmemory init cl_'BAND_LIST_COMPRESSOR'
  595. $   ADD_DEV_MODULES = "''clmemory_'"
  596. $   GOSUB ADD_DEV_MOD
  597. $   RETURN
  598. $ !
  599. $ VECTOR_DEV:
  600. $   IF F$TYPE(vector_) .NES. "" THEN RETURN
  601. $   vector_ = "gdevvec.obj"
  602. $   GOSUB BBOX_DEV
  603. $   GOSUB SFILE_DEV
  604. $   SETMOD vector "''vector_'"
  605. $   ADDMOD vector -include bbox sfile
  606. $   ADD_DEV_MODULES = "''vector_'"
  607. $   GOSUB ADD_DEV_MOD
  608. $   RETURN
  609. $ !
  610. $ ISCALE_DEV:
  611. $   iscale_ = "siscale.obj"
  612. $   SETMOD iscale 'iscale_'
  613. $   ADD_DEV_MODULES = "''iscale_'"
  614. $   GOSUB ADD_DEV_MOD
  615. $   RETURN
  616. $ !
  617. $ ROPLIB_DEV:
  618. $   roplib_ = "gdevmrop.obj gsrop.obj gsroptab.obj"
  619. $   SETMOD roplib 'roplib_'
  620. $   ADDMOD roplib -init roplib
  621. $   ADD_DEV_MODULES = "''roplib_'"
  622. $   GOSUB ADD_DEV_MOD
  623. $   RETURN
  624. $ !
  625. $! -------- Composite (PostScript Type 0) font support -------- #
  626. $ CMAPLIB_DEV:
  627. $   cmaplib_="gsfcmap.obj"
  628. $   SETMOD cmaplib "''cmaplib_'"
  629. $   ADD_DEV_MODULES = "''cmaplib_'"
  630. $   GOSUB ADD_DEV_MOD
  631. $   RETURN
  632. $ !
  633. $ PSF0LIB_DEV:
  634. $   psf0lib_ = "gschar0.obj gsfont0.obj"
  635. $   GOSUB CMAPLIB_DEV
  636. $   SETMOD psf0lib 'psf0lib_'
  637. $   ADDMOD psf0lib -include cmaplib
  638. $   ADD_DEV_MODULES = "''psf0lib_'"
  639. $   GOSUB ADD_DEV_MOD
  640. $   RETURN
  641. $ !
  642. $! ---------------- Pattern color ---------------- #
  643. $ PATLIB_DEV:
  644. $   patlib_ = "gspcolor.obj gxclip2.obj gxpcmap.obj"
  645. $   GOSUB CMYKLIB_DEV
  646. $   GOSUB PSL2CS_DEV
  647. $   SETMOD patlib -include cmyklib psl2cs
  648. $   ADDMOD patlib -obj 'patlib_'
  649. $   ADD_DEV_MODULES = "''patlib_'"
  650. $   GOSUB ADD_DEV_MOD
  651. $   RETURN
  652. $ !
  653. $! ---------------- PostScript Type 1 (and Type 4) fonts ---------------- #
  654. $ TYPE1LIB_INI:
  655. $   IF F$TYPE(type1lib_) .NES. "" THEN RETURN
  656. $   type1lib_= "gxtype1.obj gxhint1.obj gxhint2.obj gxhint3.obj"
  657. $   ADD_DEV_MODULES = "''type1lib_'"
  658. $   GOSUB ADD_DEV_MOD
  659. $   RETURN
  660. $ !
  661. $!  Type 1 charstrings
  662. $ PSF1LIB_DEV:
  663. $   IF F$TYPE(psf1lib_) .NES. "" THEN RETURN
  664. $   GOSUB TYPE1LIB_INI
  665. $   psf1lib_ = "gstype1.obj"
  666. $   SETMOD psf1lib 'psf1lib_'
  667. $   ADDMOD psf1lib 'type1lib_'
  668. $   ADDMOD psf1lib -init gstype1
  669. $   ADD_DEV_MODULES = "''psf1lib_'"
  670. $   GOSUB ADD_DEV_MOD
  671. $   RETURN
  672. $ !
  673. $! Type 2 charstrings
  674. $ PSF2LIB_DEV:
  675. $   IF F$TYPE(psf2lib_) .NES. "" THEN RETURN
  676. $   GOSUB TYPE1LIB_INI
  677. $   psf2lib_ = "gstype2.obj"
  678. $   SETMOD psf2lib 'psf2lib_'
  679. $   ADDMOD psf2lib 'type1lib_'
  680. $   ADDMOD psf2lib -init gstype2
  681. $   ADD_DEV_MODULES = "''psf2lib_'"
  682. $   GOSUB ADD_DEV_MOD
  683. $   RETURN
  684. $ !
  685. $! ---------------- TrueType and PostScript Type 42 fonts ---------------- #
  686. $ TTFLIB_DEV:
  687. $   IF F$TYPE(ttflib_) .NES. "" THEN RETURN
  688. $   ttflib_ = "gstype42.obj"
  689. $   SETMOD ttflib 'ttflib_'
  690. $   ADD_DEV_MODULES = "''ttflib_'"
  691. $   GOSUB ADD_DEV_MOD
  692. $   RETURN
  693. $ !
  694. $ CMYKLIB_DEV:
  695. $   IF F$TYPE(cmyklib_) .NES. "" THEN RETURN
  696. $   cmyklib_ = "gscolor1.obj gsht1.obj"
  697. $   SETMOD cmyklib 'cmyklib_'
  698. $   ADDMOD cmyklib -init gscolor1
  699. $   ADD_DEV_MODULES = "''cmyklib_'"
  700. $   GOSUB ADD_DEV_MOD
  701. $   RETURN
  702. $ !
  703. $ COLIMLIB_DEV:
  704. $   IF F$TYPE(colimlib_) .NES. "" THEN RETURN
  705. $   colimlib_ = "gximage3.obj"
  706. $   SETMOD colimlib 'colimlib_'
  707. $   ADDMOD colimlib -init gximage3
  708. $   ADD_DEV_MODULES = "''colimlib_'"
  709. $   GOSUB ADD_DEV_MOD
  710. $   RETURN
  711. $ !
  712. $ HSBLIB_DEV:
  713. $   hsblib_ = "gshsb.obj"
  714. $   SETMOD hsblib 'hsblib_'
  715. $   ADD_DEV_MODULES = "''hsblib_'"
  716. $   GOSUB ADD_DEV_MOD
  717. $   RETURN
  718. $ !
  719. $ PATH1LIB_DEV:
  720. $   path1lib_ = "gspath1.obj"
  721. $   SETMOD path1lib 'path1lib_'
  722. $   ADD_DEV_MODULES = "''path1lib_'"
  723. $   GOSUB ADD_DEV_MOD
  724. $   RETURN
  725. $ !
  726. $ PSL2CS_DEV:
  727. $   IF F$TYPE(psl2cs_) .NES. "" THEN RETURN
  728. $   psl2cs_ = "gscolor2.obj"
  729. $   SETMOD psl2cs 'psl2cs_'
  730. $   ADD_DEV_MODULES = "''psl2cs_'"
  731. $   GOSUB ADD_DEV_MOD
  732. $   RETURN
  733. $ !
  734. $ PSL2LIB_DEV:
  735. $   IF F$TYPE(psl2lib_) .NES. "" THEN RETURN
  736. $   psl2lib_ = "gximage4.obj gximage5.obj"
  737. $   GOSUB COLIMLIB_DEV
  738. $   GOSUB PSL2CS_DEV
  739. $   SETMOD psl2lib 'psl2lib_'
  740. $   ADDMOD psl2lib -init gximage4 gximage5
  741. $   ADDMOD psl2lib -include colimlib psl2cs
  742. $   ADD_DEV_MODULES = "''psl2lib_'"
  743. $   GOSUB ADD_DEV_MOD
  744. $   RETURN
  745. $ !
  746. $! ---------------- Display Postscript / Level 2 support ---------------- #
  747. $ DPS2LIB_DEV:
  748. $   IF F$TYPE(dps2lib_) .NES. "" THEN RETURN
  749. $   dps2lib_ = "gsdps1.obj"
  750. $   SETMOD dps2lib 'dps2lib_'
  751. $   ADD_DEV_MODULES = "''dps2lib_'"
  752. $   GOSUB ADD_DEV_MOD
  753. $   RETURN
  754. $ !
  755. $! ---------------- Display Postscript extensions ---------------- #
  756. $ DPSLIB_DEV:
  757. $   IF F$TYPE(dpslib_) .NES. "" THEN RETURN
  758. $   dpslib_ = "gsdps.obj"
  759. $   SETMOD dpslib 'dpslib_'
  760. $   ADD_DEV_MODULES = "''dpslib_'"
  761. $   GOSUB ADD_DEV_MOD
  762. $   RETURN
  763. $ !
  764. $! ---------------- CIE color ---------------- #
  765. $ CIELIB_DEV:
  766. $   IF F$TYPE(cielib_) .NES. "" THEN RETURN
  767. $   cielib_ = "gscie.obj gxctable.obj"
  768. $   SETMOD cielib 'cielib_'
  769. $   ADD_DEV_MODULES = "''cielib_'"
  770. $   GOSUB ADD_DEV_MOD
  771. $   RETURN
  772. $ !
  773. $! ---------------- Separation colors ---------------- #
  774. $ SEPRLIB_DEV:
  775. $   seprlib_ = "gscsepr.obj"
  776. $   SETMOD seprlib 'seprlib_'
  777. $   ADD_DEV_MODULES = "''seprlib_'"
  778. $   GOSUB ADD_DEV_MOD
  779. $   RETURN
  780. $ !
  781. $! ---------------- Functions ---------------- #
  782. $! Generic support, and FunctionType 0.
  783. $ FUNCLIB_DEV:
  784. $   IF F$TYPE(funclib_) .NES. "" THEN RETURN
  785. $   funclib_ = "gsdsrc.obj gsfunc.obj gsfunc0.obj"
  786. $   SETMOD funclib "''funclib_'"
  787. $   ADD_DEV_MODULES = "''funclib_'"
  788. $   GOSUB ADD_DEV_MOD
  789. $   RETURN
  790. $ !
  791. $ ISUPPORT_DEV:
  792. $   IF F$TYPE(isupport1_) .NES. "" THEN RETURN
  793. $   isupport1_ = "ialloc.obj igc.obj igcref.obj igcstr.obj"
  794. $   isupport2_ = "ilocate.obj iname.obj isave.obj"
  795. $   isupport_  = "''isupport1_' ''isupport2_'"
  796. $   SETMOD isupport 'isupport1_'
  797. $   ADDMOD isupport -obj 'isupport2_'
  798. $   ADDMOD isupport -init igcref
  799. $   ADD_DEV_MODULES = "''isupport_'"
  800. $   GOSUB ADD_DEV_MOD
  801. $   RETURN
  802. $ !
  803. $ PSBASE_DEV:
  804. $   IF F$TYPE(INT_CONFIG) .NES. "" THEN RETURN
  805. $   INT1  = "idebug.obj idict.obj idparam.obj"
  806. $   INT2  = "iinit.obj interp.obj iparam.obj ireclaim.obj"
  807. $   INT3  = "iscan.obj iscannum.obj istack.obj iutil.obj"
  808. $   INT4  = "scantab.obj sfilter1.obj sstring.obj stream.obj"
  809. $   Z1    = "zarith.obj zarray.obj zcontrol.obj zdict.obj"
  810. $   Z1OPS = "zarith zarray zcontrol zdict"
  811. $   Z2    = "zfile.obj zfileio.obj zfilter.obj zfname.obj zfproc.obj"
  812. $   Z2OPS = "zfile zfileio zfilter zfproc"
  813. $   Z3    = "zgeneric.obj ziodev.obj zmath.obj zmisc.obj zpacked.obj"
  814. $   Z3OPS = "zgeneric ziodev zmath zmisc zpacked"
  815. $   Z4    = "zrelbit.obj zstack.obj zstring.obj zsysvm.obj"
  816. $   Z4OPS = "zrelbit zstack zstring zsysvm"
  817. $   Z5    = "ztoken.obj ztype.obj zvmem.obj"
  818. $   Z5OPS = "ztoken ztype zvmem"
  819. $   Z6    = "zchar.obj zcolor.obj zdevice.obj zfont.obj zfont2.obj"
  820. $   Z6OPS = "zchar zcolor zdevice zfont zfont2"
  821. $   Z7    = "zgstate.obj zht.obj zimage.obj zmatrix.obj zpaint.obj zpath.obj"
  822. $   Z7OPS = "zgstate zht zimage zmatrix zpaint zpath"
  823. $   INT_OBJS = "imainarg.obj gsargs.obj imain.obj ''INT1' ''INT2' ''INT3' ''INT4'"
  824. $   Z_OBJS   = "''Z1' ''Z2' ''Z3' ''Z4' ''Z5' ''Z6' ''Z7'"
  825. $   INT_CONFIG = "gconfig.obj gscdefs.obj iconfig.obj iccinit0.obj"
  826. $   GOSUB ISUPPORT_DEV
  827. $   GOSUB RLD_DEV
  828. $   GOSUB RLE_DEV
  829. $   GOSUB SFILE_DEV
  830. $   SETMOD psbase imainarg.obj gsargs.obj imain.obj
  831. $   ADDMOD psbase -obj 'INT_CONFIG'
  832. $   ADDMOD psbase -obj 'INT1'
  833. $   ADDMOD psbase -obj 'INT2'
  834. $   ADDMOD psbase -obj 'INT3'
  835. $   ADDMOD psbase -obj 'INT4'
  836. $   ADDMOD psbase -obj 'Z1'
  837. $   ADDMOD psbase -oper 'Z1OPS'
  838. $   ADDMOD psbase -obj 'Z2'
  839. $   ADDMOD psbase -oper 'Z2OPS'
  840. $   ADDMOD psbase -obj 'Z3'
  841. $   ADDMOD psbase -oper 'Z3OPS'
  842. $   ADDMOD psbase -obj 'Z4'
  843. $   ADDMOD psbase -oper 'Z4OPS'
  844. $   ADDMOD psbase -obj 'Z5'
  845. $   ADDMOD psbase -oper 'Z5OPS'
  846. $   ADDMOD psbase -obj 'Z6'
  847. $   ADDMOD psbase -oper 'Z6OPS'
  848. $   ADDMOD psbase -obj 'Z7'
  849. $   ADDMOD psbase -oper 'Z7OPS'
  850. $   ADDMOD psbase -iodev stdin stdout stderr lineedit statementedit
  851. $   ADDMOD psbase -include isupport rld rle sfile
  852. $   ADD_DEV_MODULES = "''INT_OBJS'"
  853. $   GOSUB ADD_DEV_MOD
  854. $   ADD_DEV_MODULES = "''Z_OBJS'"
  855. $   GOSUB ADD_DEV_MOD
  856. $   RETURN
  857. $ !
  858. $ LEVEL1_DEV:
  859. $   GOSUB PSBASE_DEV
  860. $   GOSUB BCP_DEV
  861. $   GOSUB HSB_DEV
  862. $   GOSUB PATH1_DEV
  863. $   GOSUB TYPE1_DEV
  864. $   SETMOD level1 -include psbase bcp hsb path1 type1
  865. $   ADDMOD level1 -emulator """PostScript""" """PostScriptLevel1"""
  866. $   RETURN
  867. $ !
  868. $ COLOR_DEV:
  869. $   IF F$TYPE(COLOR_DONE) .NES. "" THEN RETURN
  870. $   GOSUB CMYKLIB_DEV
  871. $   GOSUB COLIMLIB_DEV
  872. $   GOSUB CMYKREAD_DEV
  873. $   SETMOD color -include cmyklib colimlib cmykread
  874. $   COLOR_DONE = 1
  875. $   RETURN
  876. $ !
  877. $ CMYKREAD_DEV:
  878. $   IF F$TYPE(cmykread_) .NES. "" THEN RETURN
  879. $   cmykread_ = "zcolor1.obj zht1.obj"
  880. $   SETMOD cmykread 'cmykread_'
  881. $   ADDMOD cmykread -oper zcolor1 zht1
  882. $   ADD_DEV_MODULES = "''cmykread_'"
  883. $   GOSUB ADD_DEV_MOD
  884. $   RETURN
  885. $ !
  886. $ HSB_DEV:
  887. $   hsb_ = "zhsb.obj"
  888. $   GOSUB HSBLIB_DEV
  889. $   SETMOD hsb 'hsb_'
  890. $   ADDMOD hsb -include hsblib
  891. $   ADDMOD hsb -oper zhsb
  892. $   ADD_DEV_MODULES = "''hsb_'"
  893. $   GOSUB ADD_DEV_MOD
  894. $   RETURN
  895. $ !
  896. $ PATH1_DEV:
  897. $   path1_ = "zpath1.obj"
  898. $   GOSUB PATH1LIB_DEV
  899. $   SETMOD path1 'path1_'
  900. $   ADDMOD path1 -include path1lib
  901. $   ADDMOD path1 -oper zpath1
  902. $   ADD_DEV_MODULES = "''path1_'"
  903. $   GOSUB ADD_DEV_MOD
  904. $   RETURN
  905. $ !
  906. $ BCP_DEV:
  907. $   bcp_ = "sbcp.obj zfbcp.obj"
  908. $   SETMOD bcp 'bcp_'
  909. $   ADDMOD bcp -oper zfbcp
  910. $   ADD_DEV_MODULES = "''bcp_'"
  911. $   GOSUB ADD_DEV_MOD
  912. $   RETURN
  913. $ !
  914. $ DISKFONT_DEV:
  915. $   SETMOD diskfont -ps gs_diskf
  916. $   RETURN
  917. $ !
  918. $ DOUBLE_DEV:
  919. $   IF F$TYPE(double_) .NES. "" THEN RETURN
  920. $   double_ = "zdouble.obj"
  921. $   SETMOD double 'double_'
  922. $   ADDMOD double -oper zdouble
  923. $   ADD_DEV_MODULES = "''double_'"
  924. $   GOSUB ADD_DEV_MOD
  925. $   RETURN
  926. $ !
  927. $ EPSF_DEV:
  928. $   SETMOD epsf -ps gs_epsf
  929. $   RETURN
  930. $ !
  931. $! ---------------- PostScript Type 1 (and Type 4) fonts ---------------- #
  932. $ TYPE1_DEV:
  933. $   IF F$TYPE(TYPE1_DONE) .NES. "" THEN RETURN
  934. $   GOSUB PSF1LIB_DEV
  935. $   GOSUB PSF1READ_DEV
  936. $   SETMOD type1 -include psf1lib psf1read
  937. $   TYPE1_DONE = 1
  938. $   RETURN
  939. $ !
  940. $ PSF1READ_DEV:
  941. $   IF F$TYPE(psf1read_) .NES. "" THEN RETURN
  942. $   psf1read_ = "seexec.obj zchar1.obj zcharout.obj zfont1.obj zmisc1.obj"
  943. $   SETMOD psf1read 'psf1read_'
  944. $   ADDMOD psf1read -oper zchar1 zfont1 zmisc1
  945. $   ADDMOD psf1read -ps gs_type1
  946. $   ADD_DEV_MODULES = "''psf1read_'"
  947. $   GOSUB ADD_DEV_MOD
  948. $   RETURN
  949. $ !
  950. $! ------------- Compact Font Format and Type 2 charstrings ------------- #
  951. $ CFF_DEV:
  952. $   GOSUB PSL2INT_DEV
  953. $   SETMOD cff -ps gs_cff
  954. $   RETURN
  955. $!
  956. $ TYPE2_DEV:
  957. $   GOSUB TYPE1_DEV
  958. $   GOSUB PSF2LIB_DEV
  959. $   SETMOD type2 -include psf2lib
  960. $   RETURN
  961. $!
  962. $! ---------------- TrueType and PostScript Type 42 fonts ---------------- #
  963. $! Native TrueType support
  964. $ TTFONT_DEV:
  965. $   GOSUB TYPE42_DEV
  966. $   SETMOD ttfont -include type42
  967. $   ADDMOD ttfont -ps gs_mro_e gs_wan_e gs_ttf
  968. $   RETURN
  969. $ !
  970. $! Type 42 (embedded TrueType) support
  971. $ TYPE42_DEV:
  972. $   IF F$TYPE(type42read_) .NES. "" THEN RETURN
  973. $   type42read_ = "zchar42.obj zcharout.obj zfont42.obj"
  974. $   GOSUB TTFLIB_DEV
  975. $   SETMOD type42 'type42read_'
  976. $   ADDMOD type42 -include ttflib
  977. $   ADDMOD type42 -oper zchar42 zfont42
  978. $   ADDMOD type42 -ps gs_typ42
  979. $   ADD_DEV_MODULES = "''type42read_'"
  980. $   GOSUB ADD_DEV_MOD
  981. $   RETURN
  982. $ !
  983. $ GCONFIGF_H:
  984. $   SETMOD ccfonts_ -font "''ccfonts1'"
  985. $   ADDMOD ccfonts_ -font "''ccfonts2'"
  986. $   ADDMOD ccfonts_ -font "''ccfonts3'"
  987. $   ADDMOD ccfonts_ -font "''ccfonts4'"
  988. $   ADDMOD ccfonts_ -font "''ccfonts5'"
  989. $   ADDMOD ccfonts_ -font "''ccfonts6'"
  990. $   ADDMOD ccfonts_ -font "''ccfonts7'"
  991. $   ADDMOD ccfonts_ -font "''ccfonts8'"
  992. $   ADDMOD ccfonts_ -font "''ccfonts9'"
  993. $   ADDMOD ccfonts_ -font "''ccfonts10'"
  994. $   ADDMOD ccfonts_ -font "''ccfonts11'"
  995. $   ADDMOD ccfonts_ -font "''ccfonts12'"
  996. $   ADDMOD ccfonts_ -font "''ccfonts13'"
  997. $   ADDMOD ccfonts_ -font "''ccfonts14'"
  998. $   ADDMOD ccfonts_ -font "''ccfonts15'"
  999. $   GENCONF ccfonts_.dev -n gs -f gconfigf.h
  1000. $   RETURN
  1001. $ !
  1002.  
  1003. $! ======================== PostScript Level 2 ======================== #
  1004. $ LEVEL2_DEV:
  1005. $   GOSUB CIDFONT_DEV
  1006. $   GOSUB CIE_DEV
  1007. $   GOSUB CMAPREAD_DEV
  1008. $   GOSUB COMPFONT_DEV
  1009. $   GOSUB DCT_DEV
  1010. $   GOSUB DEVCTRL_DEV
  1011. $   GOSUB DPSAND2_DEV
  1012. $   GOSUB FILTER_DEV
  1013. $   GOSUB LEVEL1_DEV
  1014. $   GOSUB PATTERN_DEV
  1015. $   GOSUB PSL2LIB_DEV
  1016. $   GOSUB PSL2READ_DEV
  1017. $   GOSUB SEPR_DEV
  1018. $   GOSUB TYPE42_DEV
  1019. $   GOSUB XFILTER_DEV
  1020. $   SETMOD level2 -include cidfont cie cmapread compfont
  1021. $   SETMOD level2 -include dct devctrl dpsand2 filter
  1022. $   ADDMOD level2 -include level1 pattern psl2lib psl2read
  1023. $   ADDMOD level2 -include sepr type42 xfilter
  1024. $   ADDMOD level2 -emulator """PostScript""" """PostScriptLevel2"""
  1025. $   RETURN
  1026. $ !
  1027. $! Define basic Level 2 language support.
  1028. $! This is the minimum required for CMap and CIDFont support.
  1029. $ PSL2INT_DEV:
  1030. $   IF F$TYPE(psl2int_) .NES. "" THEN RETURN
  1031. $   psl2int_="iutil2.obj zmisc2.obj zusparam.obj"
  1032. $   GOSUB DPS2INT_DEV
  1033. $   SETMOD psl2int "''psl2int_'"
  1034. $   ADDMOD psl2int -include dps2int
  1035. $   ADDMOD psl2int -oper zmisc2 zusparam
  1036. $   ADDMOD psl2int -ps gs_lev2 gs_res
  1037. $   ADD_DEV_MODULES = "''psl2int_'"
  1038. $   GOSUB ADD_DEV_MOD
  1039. $   RETURN
  1040. $!
  1041. $! Define full Level 2 support.
  1042. $ PSL2READ_DEV:
  1043. $   IF F$TYPE(psl2read_) .NES. "" THEN RETURN
  1044. $   psl2read_  = "zcolor2.obj zcsindex.obj zht2.obj zimage2.obj"
  1045. $   GOSUB PSL2INT_DEV
  1046. $   GOSUB DPS2READ_DEV
  1047. $   SETMOD psl2read 'psl2read_'
  1048. $   ADDMOD psl2read -include psl2int dps2read
  1049. $   ADDMOD psl2read -oper zcolor2_l2 zcsindex_l2
  1050. $   ADDMOD psl2read -oper zht2_l2 zimage2_l2
  1051. $   ADD_DEV_MODULES = "''psl2read_'"
  1052. $   GOSUB ADD_DEV_MOD
  1053. $   RETURN
  1054. $ !
  1055. $ DEVCTRL_DEV:
  1056. $   devctrl_ = "zdevice2.obj ziodev2.obj zmedia2.obj zdevcal.obj"
  1057. $   SETMOD devctrl 'devctrl_'
  1058. $   ADDMOD devctrl -oper zdevice2_l2 ziodev2_l2 zmedia2_l2
  1059. $   ADDMOD devctrl -iodev null ram calendar
  1060. $   ADDMOD devctrl -ps gs_setpd
  1061. $   ADD_DEV_MODULES = "''devctrl_'"
  1062. $   GOSUB ADD_DEV_MOD
  1063. $   RETURN
  1064. $ !
  1065. $ FDECODE_DEV:
  1066. $   IF F$TYPE(fdecode_) .NES. "" THEN RETURN
  1067. $   fdecode_ = "scantab.obj sfilter2.obj zfdecode.obj"
  1068. $   GOSUB CFD_DEV
  1069. $   GOSUB LZWD_DEV
  1070. $   GOSUB PDIFF_DEV
  1071. $   GOSUB PNGP_DEV
  1072. $   GOSUB RLD_DEV
  1073. $   SETMOD fdecode 'fdecode_'
  1074. $   ADDMOD fdecode -include cfd lzwd pdiff pngp rld
  1075. $   ADDMOD fdecode -oper zfdecode
  1076. $   ADD_DEV_MODULES = "''fdecode_'"
  1077. $   GOSUB ADD_DEV_MOD
  1078. $   RETURN
  1079. $ !
  1080. $ FILTER_DEV:
  1081. $   filter_  = "zfilter2.obj"
  1082. $   GOSUB FDECODE_DEV
  1083. $   GOSUB CFE_DEV
  1084. $   GOSUB LZWE_DEV
  1085. $   GOSUB RLE_DEV
  1086. $   SETMOD filter -include fdecode
  1087. $   ADDMOD filter -obj 'filter_'
  1088. $   ADDMOD filter -include cfe lzwe rle
  1089. $   ADDMOD filter -oper zfilter2
  1090. $   ADD_DEV_MODULES = "''filter_'"
  1091. $   GOSUB ADD_DEV_MOD
  1092. $   RETURN
  1093. $ !
  1094. $ XFILTER_DEV:
  1095. $   xfilter_ = "sbhc.obj sbwbs.obj shcgen.obj smtf.obj zfilterx.obj"
  1096. $   GOSUB PCXD_DEV
  1097. $   GOSUB PNGP_DEV
  1098. $   SETMOD xfilter 'xfilter_'
  1099. $   ADDMOD xfilter -include pcxd
  1100. $   ADDMOD xfilter -oper zfilterx
  1101. $   ADD_DEV_MODULES = "''xfilter_'"
  1102. $   GOSUB ADD_DEV_MOD
  1103. $   RETURN
  1104. $ !
  1105. $ BTOKEN_DEV:
  1106. $   btoken_ = "iscanbin.obj zbseq.obj"
  1107. $   SETMOD btoken 'btoken_'
  1108. $   ADDMOD btoken -oper zbseq_l2
  1109. $   ADDMOD btoken -ps gs_btokn
  1110. $   ADD_DEV_MODULES = "''btoken_'"
  1111. $   GOSUB ADD_DEV_MOD
  1112. $   RETURN
  1113. $ !
  1114. $ UPATH_DEV:
  1115. $   upath_ = "zupath.obj ibnum.obj"
  1116. $   SETMOD upath 'upath_'
  1117. $   ADDMOD upath -oper zupath_l2
  1118. $   ADD_DEV_MODULES = "''upath_'"
  1119. $   GOSUB ADD_DEV_MOD
  1120. $   RETURN
  1121. $ !
  1122. $! -------- Additions common to Display PostScript and Level 2 -------- #
  1123. $ DPSAND2_DEV:
  1124. $   GOSUB BTOKEN_DEV
  1125. $   GOSUB COLOR_DEV
  1126. $   GOSUB UPATH_DEV
  1127. $   GOSUB DPS2LIB_DEV
  1128. $   GOSUB DPS2READ_DEV
  1129. $   SETMOD dpsand2 -include btoken color upath dps2lib dps2read
  1130. $   RETURN
  1131. $ !
  1132. $! Note that zvmem2 includes both Level 1 and Level 2 operators.
  1133. $ DPS2INT_DEV:
  1134. $   IF F$TYPE(dps2int_) .NES. "" THEN RETURN
  1135. $   dps2int_="zvmem2.obj zdps1.obj"
  1136. $   SETMOD dps2int "''dps2int_'"
  1137. $   ADDMOD dps2int -oper zvmem2 zdps1_l2
  1138. $   ADDMOD dps2int -ps gs_dps1
  1139. $   ADD_DEV_MODULES = "''dps2int_'"
  1140. $   GOSUB ADD_DEV_MOD
  1141. $   RETURN
  1142. $!
  1143. $ DPS2READ_DEV:
  1144. $   IF F$TYPE(dps2read_) .NES. "" THEN RETURN
  1145. $   dps2read_ = "ibnum.obj zchar2.obj"
  1146. $   GOSUB DPS2INT_DEV
  1147. $   SETMOD dps2read 'dps2read_'
  1148. $   ADDMOD dps2read -include dps2int
  1149. $   ADDMOD dps2read -oper ireclaim_l2 zchar2_l2
  1150. $   ADDMOD dps2read -ps gs_dps2
  1151. $   ADD_DEV_MODULES = "''dps2read_'"
  1152. $   GOSUB ADD_DEV_MOD
  1153. $   RETURN
  1154. $ !
  1155. $! ---------------- Display PostScript ---------------- #
  1156. $ DPS_DEV:
  1157. $   dps_ = "zdps.obj icontext.obj zcontext.obj"
  1158. $   GOSUB DPSLIB_DEV
  1159. $   GOSUB LEVEL2_DEV
  1160. $   SETMOD dps -include dpslib level2
  1161. $   ADDMOD dps -obj 'dps_'
  1162. $   ADDMOD dps -oper zcontext zdps
  1163. $   ADDMOD dps -ps gs_dps
  1164. $   ADD_DEV_MODULES = "''dps_'"
  1165. $   GOSUB ADD_DEV_MOD
  1166. $   RETURN
  1167. $ !
  1168. $! ---------------- NeXT Display PostScript ---------------- #
  1169. $!**************** NOT READY FOR USE YET ****************#
  1170. $!
  1171. $! DPSNEXT_DEV:
  1172. $!   dpsnext_ = "zdpnext.obj"
  1173. $!   GOSUB DPS_DEV
  1174. $!   SETMOD dpsnext -include dps
  1175. $!   ADDMOD dpsnext -obj "''dpsnext_'"
  1176. $!   ADDMOD dpsnext -oper zdpnext
  1177. $!   ADDMOD dpsnext -ps gs_dpnxt
  1178. $!   ADD_DEV_MODULES = "''dpsnext_'"
  1179. $!   GOSUB ADD_DEV_MOD
  1180. $!   RETURN
  1181. $ !
  1182. $ COMPFONT_DEV:
  1183. $   GOSUB PSF0LIB_DEV
  1184. $   GOSUB PSF0READ_DEV
  1185. $   SETMOD compfont -include psf0lib psf0read
  1186. $   RETURN
  1187. $ !
  1188. $ PSF0READ_DEV:
  1189. $   psf0read_ = "zchar2.obj zfcmap.obj zfont0.obj"
  1190. $   SETMOD psf0read 'psf0read_'
  1191. $   ADDMOD psf0read -oper zfont0 zchar2 zfcmap
  1192. $   ADD_DEV_MODULES = "''psf0read_'"
  1193. $   GOSUB ADD_DEV_MOD
  1194. $   RETURN
  1195. $ !
  1196. $! ---------------- CMap support ---------------- #
  1197. $ CMAPREAD_DEV:
  1198. $   IF F$TYPE(cmapread_) .NES. "" THEN RETURN
  1199. $   cmapread_="zfcmap.obj"
  1200. $   GOSUB CMAPLIB_DEV
  1201. $   GOSUB PSL2INT_DEV
  1202. $   SETMOD cmapread "''cmapread_'"
  1203. $   ADDMOD cmapread -include cmaplib psl2int
  1204. $   ADDMOD cmapread -oper zfcmap
  1205. $   ADDMOD cmapread -ps gs_cmap
  1206. $   ADD_DEV_MODULES = "''cmapread_'"
  1207. $   GOSUB ADD_DEV_MOD
  1208. $   RETURN
  1209. $ !
  1210. $!
  1211. $ CIDFONT_DEV:
  1212. $   IF F$TYPE(cidread_) .NES. "" THEN RETURN
  1213. $   cidread_ = "zcid.obj"
  1214. $   GOSUB PSF1READ_DEV
  1215. $   GOSUB PSL2INT_DEV
  1216. $   GOSUB TYPE42_DEV
  1217. $   SETMOD cidfont 'cidread_'
  1218. $   ADDMOD cidfont -include psf1read psl2int type42
  1219. $   ADDMOD cidfont -ps -gs_cidfn
  1220. $   ADDMOD cidfont -oper zcid
  1221. $   ADD_DEV_MODULES = "''cidread_'"
  1222. $   GOSUB ADD_DEV_MOD
  1223. $   RETURN
  1224. $ !
  1225. $ CIE_DEV:
  1226. $   IF F$TYPE(cieread_) .NES. "" THEN RETURN
  1227. $   cieread_ = "zcie.obj zcrd.obj"
  1228. $   GOSUB CIELIB_DEV
  1229. $   SETMOD cie 'cieread_'
  1230. $   ADDMOD cie -oper zcie_l2 zcrd_l2
  1231. $   ADDMOD cie -include cielib
  1232. $   ADD_DEV_MODULES = "''cieread_'"
  1233. $   GOSUB ADD_DEV_MOD
  1234. $   RETURN
  1235. $ !
  1236. $ PATTERN_DEV:
  1237. $   GOSUB PATLIB_DEV
  1238. $   GOSUB PATREAD_DEV
  1239. $   SETMOD pattern -include patlib patread
  1240. $   RETURN
  1241. $ !
  1242. $ PATREAD_DEV:
  1243. $   patread_ = "zpcolor.obj"
  1244. $   SETMOD patread 'patread_'
  1245. $   ADDMOD patread -oper zpcolor_l2
  1246. $   ADD_DEV_MODULES = "''patread_'"
  1247. $   GOSUB ADD_DEV_MOD
  1248. $   RETURN
  1249. $ !
  1250. $ SEPR_DEV:
  1251. $   seprread_ = "zcssepr.obj"
  1252. $   GOSUB SEPRLIB_DEV
  1253. $   SETMOD sepr 'seprread_'
  1254. $   ADDMOD sepr -oper zcssepr_l2
  1255. $   ADDMOD sepr -include seprlib
  1256. $   ADD_DEV_MODULES = "''seprread_'"
  1257. $   GOSUB ADD_DEV_MOD
  1258. $   RETURN
  1259. $ !
  1260. $! ---------------- Functions ---------------- #
  1261. $! Generic support, and FunctionType 0.
  1262. $ FUNC_DEV:
  1263. $   IF F$TYPE(funcread_) .NES. "" THEN RETURN
  1264. $   funcread_ = "zfunc.obj zfunc0.obj"
  1265. $   GOSUB FUNCLIB_DEV
  1266. $   SETMOD func 'funcread_'
  1267. $   ADDMOD func -oper zfunc zfunc0
  1268. $   ADDMOD func -include funclib
  1269. $   ADD_DEV_MODULES = "''funcread_'"
  1270. $   GOSUB ADD_DEV_MOD
  1271. $   RETURN
  1272. $ !
  1273. $! ---------------- DCT filters ---------------- #
  1274. $ DCT_DEV:
  1275. $   IF F$TYPE(dctc__) .NES. "" THEN RETURN
  1276. $   dctc_="zfdctc.obj"
  1277. $   GOSUB DCTE_DEV
  1278. $   GOSUB DCTD_DEV
  1279. $   SETMOD dct -include dcte dctd
  1280. $   ADD_DEV_MODULES = "''dctc_'"
  1281. $   GOSUB ADD_DEV_MOD
  1282. $   RETURN
  1283. $ !
  1284. $! Encoding (compression)
  1285. $ DCTE_DEV:
  1286. $   IF F$TYPE(dcte_) .NES. "" THEN RETURN
  1287. $   dcte_ = "''dctc_' zfdcte.obj"
  1288. $   GOSUB SDCTE_DEV
  1289. $   SETMOD dcte -include sdcte
  1290. $   ADDMOD dcte -obj 'dcte_'
  1291. $   ADDMOD dcte -oper zfdcte
  1292. $   ADD_DEV_MODULES = "''dcte_'"
  1293. $   GOSUB ADD_DEV_MOD
  1294. $   RETURN
  1295. $ !
  1296. $! Decoding (decompression)
  1297. $ DCTD_DEV:
  1298. $   IF F$TYPE(dctd_) .NES. "" THEN RETURN
  1299. $   dctd_ = "''dctc_' zfdctd.obj"
  1300. $   GOSUB SDCTD_DEV
  1301. $   SETMOD dctd -include sdctd
  1302. $   ADDMOD dctd -obj 'dctd_'
  1303. $   ADDMOD dctd -oper zfdctd
  1304. $   ADD_DEV_MODULES = "''dctd_'"
  1305. $   GOSUB ADD_DEV_MOD
  1306. $   RETURN
  1307. $ !
  1308. $! ---------------- zlib/Flate filters ---------------- #
  1309. $ FZLIB_DEV:
  1310. $   GOSUB SZLIBE_DEV
  1311. $   GOSUB SZLIBD_DEV
  1312. $   SETMOD fzlib -include szlibe szlibd
  1313. $   ADDMOD fzlib -obj zfzlib.obj
  1314. $   ADDMOD fzlib -oper zfzlib
  1315. $   ADD_DEV_MODULES = "zfzlib.obj"
  1316. $   GOSUB ADD_DEV_MOD
  1317. $   RETURN
  1318. $ !
  1319. $! ================================ PDF ================================ #
  1320. $ PDFMIN_DEV:
  1321. $   GOSUB PSBASE_DEV
  1322. $   GOSUB COLOR_DEV
  1323. $   GOSUB DPS2LIB_DEV
  1324. $   GOSUB DPS2READ_DEV
  1325. $   GOSUB FDECODE_DEV
  1326. $   GOSUB TYPE1_DEV
  1327. $   GOSUB PDFFONTS_DEV
  1328. $   GOSUB PSL2LIB_DEV
  1329. $   GOSUB PSL2READ_DEV
  1330. $   GOSUB PDFREAD_DEV
  1331. $   SETMOD pdfmin -include psbase color dps2lib dps2read
  1332. $   ADDMOD pdfmin -include fdecode type1
  1333. $   ADDMOD pdfmin -include pdffonts psl2lib psl2read pdfread
  1334. $   ADDMOD pdfmin -emulator """PDF"""
  1335. $   RETURN
  1336. $ !
  1337. $ PDF_DEV:
  1338. $   GOSUB PDFMIN_DEV
  1339. $   GOSUB CFF_DEV
  1340. $   GOSUB CIDFONT_DEV
  1341. $   GOSUB CIE_DEV
  1342. $   GOSUB COMPFONT_DEV
  1343. $   GOSUB CMAPREAD_DEV
  1344. $   GOSUB DCTD_DEV
  1345. $   GOSUB FUNC_DEV
  1346. $   GOSUB TTFONT_DEV
  1347. $   GOSUB TYPE2_DEV
  1348. $   SETMOD pdf -include pdfmin cff cidfont cie cmapread
  1349. $   ADDMOD pdf -include compfont dctd func ttfont type2
  1350. $   RETURN
  1351. $ !
  1352. $! Reader only
  1353. $ PDFFONTS_DEV:
  1354. $   SETMOD pdffonts -ps gs_mex_e gs_mro_e gs_pdf_e gs_wan_e
  1355. $   RETURN
  1356. $ !
  1357. $ PDFREAD_DEV:
  1358. $   GOSUB FZLIB_DEV
  1359. $   SETMOD pdfread -include fzlib
  1360. $   ADDMOD pdfread -ps gs_pdf gs_l2img
  1361. $   ADDMOD pdfread -ps pdf_base pdf_draw pdf_font pdf_main pdf_sec
  1362. $   ADDMOD pdfread -ps pdf_2ps
  1363. $   RETURN
  1364. $ !
  1365. $ JPEGC_DEV:
  1366. $   IF F$TYPE(jpegc_) .NES. "" THEN RETURN
  1367. $   jpegc_ = "jcomapi.obj jutils.obj sjpegerr.obj jmemmgr.obj"
  1368. $   COPY GSJCONF.H JCONFIG.H
  1369. $   COPY GSJMOREC.H JMORECFG.H
  1370. $   COPY 'JSRCDIR'JMORECFG.H []JMCORIG.H
  1371. $   COPY 'JSRCDIR'JERROR.H   []JERROR.H
  1372. $   COPY 'JSRCDIR'JINCLUDE.H []JINCLUDE.H
  1373. $   COPY 'JSRCDIR'JPEGLIB.H  []JPEGLIB.H
  1374. $   COPY 'JSRCDIR'JVERSION.H []JVERSION.H
  1375. $   SETMOD JPEGC 'jpegc_'
  1376. $   ADD_DEV_MODULES = "''JSRCDIR'jcomapi.obj ''JSRCDIR'jutils.obj " +-
  1377.      "sjpegerr.obj ''JSRCDIR'jmemmgr.obj"
  1378. $   GOSUB ADD_DEV_MOD
  1379. $   RETURN
  1380. $ !
  1381. $ JPEGE_DEV:
  1382. $   IF F$TYPE(jpege6) .NES. "" THEN RETURN
  1383. $   jpege5 = "jcapi.obj"
  1384. $   jpege6 = "jcapimin.obj jcapistd.obj jcinit.obj"
  1385. $   jpege_1 = "jccoefct.obj jccolor.obj jcdctmgr.obj"
  1386. $   jpege_2 = "jchuff.obj jcmainct.obj jcmarker.obj jcmaster.obj"
  1387. $   jpege_3 = "jcparam.obj jcprepct.obj jcsample.obj jfdctint.obj"
  1388. $   GOSUB JPEGC_DEV
  1389. $   IF JVERSION .EQ. 5 THEN SETMOD jpege 'jpege5'
  1390. $   IF JVERSION .EQ. 6 THEN SETMOD jpege 'jpege6'
  1391. $   ADDMOD jpege -include jpegc
  1392. $   ADDMOD jpege -obj 'jpege_1'
  1393. $   ADDMOD jpege -obj 'jpege_2'
  1394. $   ADDMOD jpege -obj 'jpege_3'
  1395. $   IF JVERSION .EQ. 5 THEN ADD_DEV_MODULES = "''JSRCDIR'jcapi.obj"
  1396. $   IF JVERSION .EQ. 6 THEN ADD_DEV_MODULES = "''JSRCDIR'jcapimin.obj " +-
  1397.      "''JSRCDIR'jcapistd.obj ''JSRCDIR'jcinit.obj"
  1398. $   GOSUB ADD_DEV_MOD
  1399. $   ADD_DEV_MODULES = "''JSRCDIR'jccoefct.obj ''JSRCDIR'jccolor.obj " +-
  1400.      "''JSRCDIR'jcdctmgr.obj"
  1401. $   GOSUB ADD_DEV_MOD
  1402. $   ADD_DEV_MODULES = "''JSRCDIR'jchuff.obj ''JSRCDIR'jcmainct.obj " +-
  1403.      "''JSRCDIR'jcmarker.obj ''JSRCDIR'jcmaster.obj"
  1404. $   GOSUB ADD_DEV_MOD
  1405. $   ADD_DEV_MODULES = "''JSRCDIR'jcparam.obj ''JSRCDIR'jcprepct.obj " +-
  1406.      "''JSRCDIR'jcsample.obj ''JSRCDIR'jfdctint.obj"
  1407. $   GOSUB ADD_DEV_MOD
  1408. $   RETURN
  1409. $ !
  1410. $ JPEGD_DEV:
  1411. $   IF F$TYPE(jpegd6) .NES. "" THEN RETURN
  1412. $   jpegd5 = "jdapi.obj"
  1413. $   jpegd6 = "jdapimin.obj jdapistd.obj jdinput.obj jdphuff.obj"
  1414. $   jpegd_1 = "jdcoefct.obj jdcolor.obj"
  1415. $   jpegd_2 = "jddctmgr.obj jdhuff.obj jdmainct.obj jdmarker.obj"
  1416. $   jpegd_3 = "jdmaster.obj jdpostct.obj jdsample.obj jidctint.obj"
  1417. $   GOSUB JPEGC_DEV
  1418. $   IF JVERSION .EQ. 5 THEN SETMOD jpegd 'jpegd5'
  1419. $   IF JVERSION .EQ. 6 THEN SETMOD jpegd 'jpegd6'
  1420. $   ADDMOD jpegd -include jpegc
  1421. $   ADDMOD jpegd -obj 'jpegd_1'
  1422. $   ADDMOD jpegd -obj 'jpegd_2'
  1423. $   ADDMOD jpegd -obj 'jpegd_3'
  1424. $   IF JVERSION .EQ. 5 THEN ADD_DEV_MODULES = "''JSRCDIR'jdapi.obj"
  1425. $   IF JVERSION .EQ. 6 THEN ADD_DEV_MODULES = "''JSRCDIR'jdapimin.obj " +-
  1426.      "''JSRCDIR'jdapistd.obj ''JSRCDIR'jdinput.obj ''JSRCDIR'jdphuff.obj"
  1427. $   GOSUB ADD_DEV_MOD
  1428. $   ADD_DEV_MODULES = "''JSRCDIR'jdcoefct.obj ''JSRCDIR'jdcolor.obj"
  1429. $   GOSUB ADD_DEV_MOD
  1430. $   ADD_DEV_MODULES = "''JSRCDIR'jddctmgr.obj ''JSRCDIR'jdhuff.obj " +-
  1431.      "''JSRCDIR'jdmainct.obj ''JSRCDIR'jdmarker.obj"
  1432. $   GOSUB ADD_DEV_MOD
  1433. $   ADD_DEV_MODULES = "''JSRCDIR'jdmaster.obj ''JSRCDIR'jdpostct.obj " +-
  1434.      "''JSRCDIR'jdsample.obj ''JSRCDIR'jidctint.obj"
  1435. $   GOSUB ADD_DEV_MOD
  1436. $   RETURN
  1437. $ !
  1438. $ LIBPNG_DEV:
  1439. $   IF F$TYPE(png_) .NES. "" THEN RETURN
  1440. $   png_1 = "png.obj pngmem.obj pngerror.obj"
  1441. $   png_2 = "pngtrans.obj pngwrite.obj pngwtran.obj pngwutil.obj"
  1442. $   png_  = "gdevpng.obj gdevpccm.obj gdevprn.obj"
  1443. $   COPY 'PSRCDIR'PNG.H     []PNG.H
  1444. $   COPY 'PSRCDIR'PNGCONF.H []PNGCONF.H
  1445. $   GOSUB ZLIBE_DEV
  1446. $   IF PVERSION .EQ. 88 THEN SETMOD libpng "pngio.obj"
  1447. $   IF PVERSION .EQ. 89 THEN SETMOD libpng "pngwio.obj"
  1448. $   IF PVERSION .GE. 90
  1449. $     THEN
  1450. $       GOSUB CRC32_DEV
  1451. $       SETMOD libpng "pngwio.obj" -include crc32
  1452. $     ENDIF
  1453. $   ADDMOD libpng -obj 'png_1'
  1454. $   ADDMOD libpng -obj 'png_2'
  1455. $   ADDMOD libpng -include zlibe
  1456. $   ADD_DEV_MODULES = "''PSRCDIR'png.obj ''PSRCDIR'pngmem.obj "
  1457. $   IF PVERSION .EQ. 88 THEN ADD_DEV_MODULES = ADD_DEV_MODULES +-
  1458.      "''PSRCDIR'pngio.obj ''PSRCDIR'pngerror.obj"
  1459. $   IF PVERSION .GT. 89 THEN ADD_DEV_MODULES = ADD_DEV_MODULES +-
  1460.      "''PSRCDIR'pngwio.obj ''PSRCDIR'pngerror.obj"
  1461. $   GOSUB ADD_DEV_MOD
  1462. $   ADD_DEV_MODULES = "''PSRCDIR'pngtrans.obj ''PSRCDIR'pngwrite.obj " +-
  1463.      "''PSRCDIR'pngwtran.obj ''PSRCDIR'pngwutil.obj"
  1464. $   GOSUB ADD_DEV_MOD
  1465. $   ADD_DEV_MODULES = "''png_'"
  1466. $   GOSUB ADD_DEV_MOD
  1467. $   RETURN
  1468. $ !
  1469. $! Code common to compression and decompression.
  1470. $ ZLIBC_DEV:
  1471. $   COPY 'ZSRCDIR'ZCONF.H   []ZCONF.H
  1472. $   COPY 'ZSRCDIR'ZLIB.H    []ZLIB.H
  1473. $   COPY 'ZSRCDIR'ZUTIL.H   []ZUTIL.H
  1474. $   COPY 'ZSRCDIR'DEFLATE.H []DEFLATE.H
  1475. $   zlibc_ = "zutil.obj"
  1476. $   SETMOD zlibc 'zlibc_'
  1477. $   ADD_DEV_MODULES = "''ZSRCDIR'zutil.obj"
  1478. $   GOSUB ADD_DEV_MOD
  1479. $   RETURN
  1480. $ !
  1481. $! Encoding (compression) code.
  1482. $ ZLIBE_DEV:
  1483. $   IF F$TYPE(zlibe_) .NES. "" THEN RETURN
  1484. $   zlibe_ = "adler32.obj deflate.obj trees.obj"
  1485. $   GOSUB ZLIBC_DEV
  1486. $   SETMOD zlibe 'zlibe_'
  1487. $   ADDMOD zlibe -include zlibc
  1488. $   ADD_DEV_MODULES = "''ZSRCDIR'adler32.obj ''ZSRCDIR'deflate.obj " +-
  1489.      "''ZSRCDIR'trees.obj"
  1490. $   GOSUB ADD_DEV_MOD
  1491. $   RETURN
  1492. $ !
  1493. $! The zlib filters per se don't need crc32, but libpng versions starting
  1494. $! with 0.90 do.
  1495. $ CRC32_DEV:
  1496. $   SETMOD crc32 "crc32.obj"
  1497. $   ADD_DEV_MODULES = "''ZSRCDIR'crc32.obj"
  1498. $   GOSUB ADD_DEV_MOD
  1499. $   RETURN
  1500. $ !
  1501. $! Decoding (decompression) code.
  1502. $ ZLIBD_DEV:
  1503. $   IF F$TYPE(zlibd_) .NES. "" THEN RETURN
  1504. $   zlibd1_ = "infblock.obj infcodes.obj inffast.obj"
  1505. $   zlibd2_ = "inflate.obj inftrees.obj infutil.obj"
  1506. $   zlibd_  = "''zlibd1_' ''zlibd2_'"
  1507. $   GOSUB ZLIBC_DEV
  1508. $   SETMOD zlibd 'zlibd1_'
  1509. $   ADDMOD zlibd -obj 'zlibd2_'
  1510. $   ADDMOD zlibe -include zlibc
  1511. $   ADD_DEV_MODULES =-
  1512.      "''ZSRCDIR'infblock.obj ''ZSRCDIR'infcodes.obj ''ZSRCDIR'inffast.obj " +-
  1513.      "''ZSRCDIR'inflate.obj ''ZSRCDIR'inftrees.obj ''ZSRCDIR'infutil.obj"
  1514. $   GOSUB ADD_DEV_MOD
  1515. $   RETURN
  1516. $ !
  1517. $ X11DEV_INIT:
  1518. $   x11_  = "gdevx.obj gdevxini.obj gdevxxf.obj gdevemap.obj"
  1519. $   x11alt_ = "''x11_' gdevxalt.obj"
  1520. $   XLIBS = "Xt Xext X11"
  1521. $   ADD_DEV_MODULES = "''x11alt_'"
  1522. $   GOSUB ADD_DEV_MOD
  1523. $   RETURN
  1524. $ !
  1525. $ X11_DEV:
  1526. $   IF F$TYPE(x11_) .EQS. "" THEN GOSUB X11DEV_INIT
  1527. $   SETDEV x11 'x11_'
  1528. $   ADDMOD x11 -lib 'XLIBS'
  1529. $   RETURN
  1530. $ !
  1531. $ X11ALPHA_DEV:
  1532. $   IF F$TYPE(x11_) .EQS. "" THEN GOSUB X11DEV_INIT
  1533. $   SETDEV x11alpha 'x11alt_'
  1534. $   ADDMOD x11alpha -lib 'XLIBS'
  1535. $   RETURN
  1536. $ !
  1537. $ X11CMYK_DEV:
  1538. $   IF F$TYPE(x11_) .EQS. "" THEN GOSUB X11DEV_INIT
  1539. $   SETDEV x11cmyk 'x11alt_'
  1540. $   ADDMOD x11cmyk -lib 'XLIBS'
  1541. $   RETURN
  1542. $ !
  1543. $ X11GRAY2_DEV:
  1544. $   IF F$TYPE(x11_) .EQS. "" THEN GOSUB X11DEV_INIT
  1545. $   SETDEV x11gray2 'x11alt_'
  1546. $   ADDMOD x11gray2 -lib 'XLIBS'
  1547. $   RETURN
  1548. $ !
  1549. $ X11MONO_DEV:
  1550. $   IF F$TYPE(x11_) .EQS. "" THEN GOSUB X11DEV_INIT
  1551. $   SETDEV x11mono 'x11alt_'
  1552. $   ADDMOD x11mono -lib 'XLIBS'
  1553. $   RETURN
  1554. $ !
  1555. $ LN03_INIT:
  1556. $   ln03_ = "gdevln03.obj gdevprn.obj"
  1557. $   ADD_DEV_MODULES = "''ln03_'"
  1558. $   GOSUB ADD_DEV_MOD
  1559. $   RETURN
  1560. $ !
  1561. $ SXLCRT_DEV:
  1562. $   IF F$TYPE(ln03_) .EQS. "" THEN GOSUB LN03_INIT
  1563. $   SETDEV sxlcrt 'ln03_'
  1564. $   RETURN
  1565. $ !
  1566. $ BJDEV_INIT:
  1567. $   bj10e_ = "gdevbj10.obj gdevprn.obj"
  1568. $   GOSUB CLIST_DEV
  1569. $   ADD_DEV_MODULES = "''bj10e_'"
  1570. $   GOSUB ADD_DEV_MOD
  1571. $   RETURN
  1572. $ !
  1573. $ BJ10E_DEV:
  1574. $   IF F$TYPE(bj10e_) .EQS. "" THEN GOSUB BJDEV_INIT
  1575. $   SETDEV bj10e 'bj10e_'
  1576. $   RETURN
  1577. $ !
  1578. $ BJ200_DEV:
  1579. $   IF F$TYPE(bj10e_) .EQS. "" THEN GOSUB BJDEV_INIT
  1580. $   SETDEV bj200 'bj10e_'
  1581. $   RETURN
  1582. $ !
  1583. $ HPMONO_INIT:
  1584. $   HPPCL     = "gdevprn.obj gdevpcl.obj"
  1585. $   HPMONO    = "gdevdjet.obj ''HPPCL'"
  1586. $   GOSUB CLIST_DEV
  1587. $   ADD_DEV_MODULES = "''HPMONO'"
  1588. $   GOSUB ADD_DEV_MOD
  1589. $   RETURN
  1590. $ !
  1591. $ DESKJET_DEV:
  1592. $   IF F$TYPE(HPMONO) .EQS. "" THEN GOSUB HPMONO_INIT
  1593. $   SETDEV deskjet 'HPMONO'
  1594. $   RETURN
  1595. $ !
  1596. $ DJET500_DEV:
  1597. $   IF F$TYPE(HPMONO) .EQS. "" THEN GOSUB HPMONO_INIT
  1598. $   SETDEV djet500 'HPMONO'
  1599. $   RETURN
  1600. $ !
  1601. $ LASERJET_DEV:
  1602. $   IF F$TYPE(HPMONO) .EQS. "" THEN GOSUB HPMONO_INIT
  1603. $   SETDEV laserjet 'HPMONO'
  1604. $   RETURN
  1605. $ !
  1606. $ LJETPLUS_DEV:
  1607. $   IF F$TYPE(HPMONO) .EQS. "" THEN GOSUB HPMONO_INIT
  1608. $   SETDEV ljetplus 'HPMONO'
  1609. $   RETURN
  1610. $ !
  1611. $ LJET2P_DEV:
  1612. $   IF F$TYPE(HPMONO) .EQS. "" THEN GOSUB HPMONO_INIT
  1613. $   SETDEV ljet2p 'HPMONO'
  1614. $   RETURN
  1615. $ !
  1616. $ LJET3_DEV:
  1617. $   IF F$TYPE(HPMONO) .EQS. "" THEN GOSUB HPMONO_INIT
  1618. $   SETDEV ljet3 'HPMONO'
  1619. $   RETURN
  1620. $ !
  1621. $ LJET4_DEV:
  1622. $   IF F$TYPE(HPMONO) .EQS. "" THEN GOSUB HPMONO_INIT
  1623. $   SETDEV ljet4 'HPMONO'
  1624. $   RETURN
  1625. $ !
  1626. $ LP2563_DEV:
  1627. $   IF F$TYPE(HPMONO) .EQS. "" THEN GOSUB HPMONO_INIT
  1628. $   SETDEV lp2563 'HPMONO'
  1629. $   RETURN
  1630. $ !
  1631. $ OCE9050_DEV:
  1632. $   IF F$TYPE(HPMONO) .EQS. "" THEN GOSUB HPMONO_INIT
  1633. $   SETDEV oce9050 'HPMONO'
  1634. $   RETURN
  1635. $ !
  1636. $ LJ5INIT_INIT:
  1637. $   HPPCL     = "gdevprn.obj gdevpcl.obj"
  1638. $   ljet5_    = "gdevlj56.obj ''HPPCL'"
  1639. $   GOSUB CLIST_DEV
  1640. $   ADD_DEV_MODULES = "''ljet5_'"
  1641. $   GOSUB ADD_DEV_MOD
  1642. $   RETURN
  1643. $ !
  1644. $ LJ5MONO_DEV:
  1645. $   IF F$TYPE(ljet5_) .EQS. "" THEN GOSUB LJ5INIT_INIT
  1646. $   SETDEV lj5mono 'ljet5_'
  1647. $   RETURN
  1648. $ !
  1649. $ LJ5GRAY_DEV:
  1650. $   IF F$TYPE(ljet5_) .EQS. "" THEN GOSUB LJ5INIT_INIT
  1651. $   SETDEV lj5gray 'ljet5_'
  1652. $   RETURN
  1653. $ !
  1654. $ HPDEV_INIT:
  1655. $   HPPCL     = "gdevprn.obj gdevpcl.obj"
  1656. $   cdeskjet_ = "gdevcdj.obj ''HPPCL'"
  1657. $   GOSUB CLIST_DEV
  1658. $   ADD_DEV_MODULES = "''cdeskjet_'"
  1659. $   GOSUB ADD_DEV_MOD
  1660. $   RETURN
  1661. $ !
  1662. $ CDESKJET_DEV:
  1663. $   IF F$TYPE(cdeskjet_) .EQS. "" THEN GOSUB HPDEV_INIT
  1664. $   SETDEV cdeskjet 'cdeskjet_'
  1665. $   RETURN
  1666. $ !
  1667. $ CDJCOLOR_DEV:
  1668. $   IF F$TYPE(cdeskjet_) .EQS. "" THEN GOSUB HPDEV_INIT
  1669. $   SETDEV cdjcolor 'cdeskjet_'
  1670. $   RETURN
  1671. $ !
  1672. $ CDJMONO_DEV:
  1673. $   IF F$TYPE(cdeskjet_) .EQS. "" THEN GOSUB HPDEV_INIT
  1674. $   SETDEV cdjmono 'cdeskjet_'
  1675. $   RETURN
  1676. $ !
  1677. $ CDJ550_DEV:
  1678. $   IF F$TYPE(cdeskjet_) .EQS. "" THEN GOSUB HPDEV_INIT
  1679. $   SETDEV cdj550 'cdeskjet_'
  1680. $   RETURN
  1681. $ !
  1682. $ DECLJ250_DEV:
  1683. $   IF F$TYPE(cdeskjet_) .EQS. "" THEN GOSUB HPDEV_INIT
  1684. $   SETDEV declj250 'cdeskjet_'
  1685. $   RETURN
  1686. $ !
  1687. $ DNJ650C_DEV:
  1688. $   IF F$TYPE(cdeskjet_) .EQS. "" THEN GOSUB HPDEV_INIT
  1689. $   SETDEV dnj650c 'cdeskjet_'
  1690. $   RETURN
  1691. $ !
  1692. $ LJ4DITH_DEV:
  1693. $   IF F$TYPE(cdeskjet_) .EQS. "" THEN GOSUB HPDEV_INIT
  1694. $   SETDEV lj4dith 'cdeskjet_'
  1695. $   RETURN
  1696. $ !
  1697. $ PJ_DEV:
  1698. $   IF F$TYPE(cdeskjet_) .EQS. "" THEN GOSUB HPDEV_INIT
  1699. $   SETDEV pj 'cdeskjet_'
  1700. $   RETURN
  1701. $ !
  1702. $ PJXL_DEV:
  1703. $   IF F$TYPE(cdeskjet_) .EQS. "" THEN GOSUB HPDEV_INIT
  1704. $   SETDEV pjxl 'cdeskjet_'
  1705. $   RETURN
  1706. $ !
  1707. $ PJXL300_DEV:
  1708. $   IF F$TYPE(cdeskjet_) .EQS. "" THEN GOSUB HPDEV_INIT
  1709. $   SETDEV pjxl300 'cdeskjet_'
  1710. $   RETURN
  1711. $ !
  1712. $ BJC600_DEV:
  1713. $   IF F$TYPE(cdeskjet_) .EQS. "" THEN GOSUB HPDEV_INIT
  1714. $   SETDEV bjc600 'cdeskjet_'
  1715. $   RETURN
  1716. $ !
  1717. $ BJC800_DEV:
  1718. $   IF F$TYPE(cdeskjet_) .EQS. "" THEN GOSUB HPDEV_INIT
  1719. $   SETDEV bjc800 'cdeskjet_'
  1720. $   RETURN
  1721. $ !
  1722. $ ESCP_DEV:
  1723. $   IF F$TYPE(cdeskjet_) .EQS. "" THEN GOSUB HPDEV_INIT
  1724. $   SETDEV escp 'cdeskjet_'
  1725. $   RETURN
  1726. $ !
  1727. $! --------------- Ugly/Update -> Unified Printer Driver ---------------- ###
  1728. $ UNIPRINT_DEV:
  1729. $   IF F$TYPE(uniprint_) .NES. "" THEN RETURN
  1730. $   uniprint_ = "gdevupd.obj"
  1731. $   SETDEV uniprint 'uniprint_'
  1732. $   ADD_DEV_MODULES = "''uniprint_'"
  1733. $   GOSUB ADD_DEV_MOD
  1734. $   RETURN
  1735. $ !
  1736. $ LN03_DEV:
  1737. $   IF F$TYPE(ln03_) .EQS. "" THEN GOSUB LN03_INIT
  1738. $   SETDEV ln03 'ln03'
  1739. $   RETURN
  1740. $ !
  1741. $ LA50_DEV:
  1742. $   IF F$TYPE(ln03_) .EQS. "" THEN GOSUB LN03_INIT
  1743. $   SETDEV la50 'ln03'
  1744. $   RETURN
  1745. $ !
  1746. $ LA70_DEV:
  1747. $   IF F$TYPE(ln03_) .EQS. "" THEN GOSUB LN03_INIT
  1748. $   SETDEV la70 'ln03'
  1749. $   RETURN
  1750. $ !
  1751. $ LA75_DEV:
  1752. $   IF F$TYPE(ln03_) .EQS. "" THEN GOSUB LN03_INIT
  1753. $   SETDEV la75 'ln03'
  1754. $   RETURN
  1755. $ !
  1756. $ LA75PLUS_DEV:
  1757. $   IF F$TYPE(ln03_) .EQS. "" THEN GOSUB LN03_INIT
  1758. $   SETDEV la75plus 'ln03'
  1759. $   RETURN
  1760. $ !
  1761. $ LA70T_DEV:
  1762. $   la70t_ = "gdevla7t.obj"
  1763. $   SETDEV la70t 'la70t_'
  1764. $   ADD_DEV_MODULES = "''la70t_'"
  1765. $   GOSUB ADD_DEV_MOD
  1766. $   RETURN
  1767. $ !
  1768. $ TEK4696_DEV:
  1769. $   tek4696_ = "gdevtknk.obj gdevprn.obj"
  1770. $   SETDEV tek4696 'tek4696_'
  1771. $   ADD_DEV_MODULES = "''tek4696_'"
  1772. $   GOSUB ADD_DEV_MOD
  1773. $   RETURN
  1774. $ !
  1775. $ DFAX_INIT:
  1776. $   dfax_ = "gdevdfax.obj gdevtfax.obj"
  1777. $   ADD_DEV_MODULES = "''dfax_'"
  1778. $   GOSUB ADD_DEV_MOD
  1779. $   RETURN
  1780. $ !
  1781. $ DFAXLOW_DEV:
  1782. $   IF F$TYPE(dfax_) .EQS. "" THEN GOSUB DFAX_INIT
  1783. $   SETDEV dfaxlow "''dfax_'"
  1784. $   ADDMOD  dfaxlow -include cfe
  1785. $   RETURN
  1786. $ !
  1787. $ DFAXHIGH_DEV:
  1788. $   IF F$TYPE(dfax_) .EQS. "" THEN GOSUB DFAX_INIT
  1789. $   SETDEV dfaxhigh "''dfax_'"
  1790. $   ADDMOD  dfaxhigh -include cfe
  1791. $   RETURN
  1792. $ !
  1793. $! PostScript and EPS writers
  1794. $ PSWRITE_INI:
  1795. $   IF F$TYPE(pswrite_) .NES. "" THEN RETURN
  1796. $   pswrite1_ = "gdevps.obj gdevpsdf.obj gdevpstr.obj"
  1797. $   pswrite2_ = "scantab.obj sfilter2.obj"
  1798. $   pswrite_  = "''pswrite1_' ''pswrite2_'"
  1799. $   ADD_DEV_MODULES = "''pswrite_'"
  1800. $   GOSUB ADD_DEV_MOD
  1801. $   RETURN
  1802. $ !
  1803. $ EPSWRITE_DEV:
  1804. $   GOSUB PSWRITE_INI
  1805. $   GOSUB VECTOR_DEV
  1806. $   SETDEV epswrite "''pswrite1_'"
  1807. $   ADDMOD epswrite "''pswrite2_'"
  1808. $   ADDMOD epswrite -include vector
  1809. $   RETURN
  1810. $ !
  1811. $ PSWRITE_DEV:
  1812. $   GOSUB PSWRITE_INI
  1813. $   GOSUB VECTOR_DEV
  1814. $   SETDEV pswrite "''pswrite1_'"
  1815. $   ADDMOD pswrite "''pswrite2_'"
  1816. $   ADDMOD pswrite -include vector
  1817. $   RETURN
  1818. $ !
  1819. $! PDF writer
  1820. $ PDFWRITE_DEV:
  1821. $   pdfwrite1_ = "gdevpdf.obj gdevpdfd.obj gdevpdfi.obj gdevpdfm.obj"
  1822. $   pdfwrite2_ = "gdevpdfp.obj gdevpdft.obj gdevpsdf.obj gdevpstr.obj"
  1823. $   pdfwrite3_ = "gsflip.obj scantab.obj sfilter2.obj sstring.obj"
  1824. $   pdfwrite_  = "''pdfwrite1_' ''pdfwrite2_' ''pdfwrite3_'"
  1825. $   GOSUB CMYKLIB_DEV
  1826. $   GOSUB CFE_DEV
  1827. $   GOSUB DCTE_DEV
  1828. $   GOSUB LZWE_DEV
  1829. $   GOSUB RLE_DEV
  1830. $   GOSUB VECTOR_DEV
  1831. $   SETDEV pdfwrite 'pdfwrite1_'
  1832. $   ADDMOD pdfwrite 'pdfwrite2_'
  1833. $   ADDMOD pdfwrite 'pdfwrite3_'
  1834. $   ADDMOD pdfwrite -ps gs_pdfwr
  1835. $   ADDMOD pdfwrite -include cmyklib cfe dcte lzwe rle vector
  1836. $   ADD_DEV_MODULES = "''pdfwrite_'"
  1837. $   GOSUB ADD_DEV_MOD
  1838. $   RETURN
  1839. $ !
  1840. $ PXLDEV_INIT:
  1841. $   pxl_ = "gdevpx.obj"
  1842. $   GOSUB VECTOR_DEV
  1843. $   ADD_DEV_MODULES = "''pxl_'"
  1844. $   GOSUB ADD_DEV_MOD
  1845. $   RETURN
  1846. $ !
  1847. $ PXLMONO_DEV:
  1848. $   IF F$TYPE(pxl_) .EQS. "" THEN GOSUB PXLDEV_INIT
  1849. $   SETDEV pxlmono "''pxl_'"
  1850. $   ADDMOD pxlmono -include vector
  1851. $   RETURN
  1852. $ !
  1853. $ PXLCOLOR_DEV:
  1854. $   IF F$TYPE(pxl_) .EQS. "" THEN GOSUB PXLDEV_INIT
  1855. $   SETDEV pxlcolor "''pxl_'"
  1856. $   ADDMOD pxlcolor -include vector
  1857. $   RETURN
  1858. $ !
  1859. $ BITDEV_INIT:
  1860. $   bit_ = "gdevbit.obj gdevprn.obj"
  1861. $   GOSUB CLIST_DEV
  1862. $   ADD_DEV_MODULES = "''bit_'"
  1863. $   GOSUB ADD_DEV_MOD
  1864. $   RETURN
  1865. $ !
  1866. $ BIT_DEV:
  1867. $   IF F$TYPE(bit_) .EQS. "" THEN GOSUB BITDEV_INIT
  1868. $   SETDEV bit 'bit_'
  1869. $   RETURN
  1870. $ !
  1871. $ BITRGB_DEV:
  1872. $   IF F$TYPE(bit_) .EQS. "" THEN GOSUB BITDEV_INIT
  1873. $   SETDEV bitrgb 'bit_'
  1874. $   RETURN
  1875. $ !
  1876. $ BITCMYK_DEV:
  1877. $   IF F$TYPE(bit_) .EQS. "" THEN GOSUB BITDEV_INIT
  1878. $   SETDEV bitcmyk 'bit_'
  1879. $   RETURN
  1880. $ !
  1881. $ BMPDEV_INIT:
  1882. $   bmp_ = "gdevbmp.obj gdevpccm.obj gdevprn.obj"
  1883. $   ADD_DEV_MODULES = "''bmp_'"
  1884. $   GOSUB ADD_DEV_MOD
  1885. $   RETURN
  1886. $ !
  1887. $ BMPMONO_DEV:
  1888. $   IF F$TYPE(bmp_) .EQS. "" THEN GOSUB BMPDEV_INIT
  1889. $   SETDEV bmpmono 'bmp_'
  1890. $   RETURN
  1891. $ !
  1892. $ BMP16_DEV:
  1893. $   IF F$TYPE(bmp_) .EQS. "" THEN GOSUB BMPDEV_INIT
  1894. $   SETDEV bmp16 'bmp_'
  1895. $   RETURN
  1896. $ !
  1897. $ BMP256_DEV:
  1898. $   IF F$TYPE(bmp_) .EQS. "" THEN GOSUB BMPDEV_INIT
  1899. $   SETDEV bmp256 'bmp_'
  1900. $   RETURN
  1901. $ !
  1902. $ BMP16M_DEV:
  1903. $   IF F$TYPE(bmp_) .EQS. "" THEN GOSUB BMPDEV_INIT
  1904. $   SETDEV bmp16m 'bmp_'
  1905. $   RETURN
  1906. $ !
  1907. $ CGMDEV_INIT:
  1908. $   cgm_ = "gdevcgm.obj gdevcgml.obj"
  1909. $   ADD_DEV_MODULES = "''cgm_'"
  1910. $   GOSUB ADD_DEV_MOD
  1911. $   RETURN
  1912. $ !
  1913. $ CGMMONO_DEV:
  1914. $   IF F$TYPE(cgm_) .EQS. "" THEN GOSUB CGMDEV_INIT
  1915. $   SETDEV cgmmono 'cgm_'
  1916. $   RETURN
  1917. $ !
  1918. $ CGM8_DEV:
  1919. $   IF F$TYPE(cgm_) .EQS. "" THEN GOSUB CGMDEV_INIT
  1920. $   SETDEV cgm8 'cgm_'
  1921. $   RETURN
  1922. $ !
  1923. $ CGM24_DEV:
  1924. $   IF F$TYPE(cgm_) .EQS. "" THEN GOSUB CGMDEV_INIT
  1925. $   SETDEV cgm24 'cgm_'
  1926. $   RETURN
  1927. $ !
  1928. $!### ------------------------- JPEG file format ------------------------- ###
  1929. $ JPEG_INI:
  1930. $   IF F$TYPE(jpeg_) .NES. "" THEN RETURN
  1931. $   jpeg_="gdevjpeg.obj"
  1932. $   ADD_DEV_MODULES = "''jpeg_'"
  1933. $   GOSUB ADD_DEV_MOD
  1934. $   RETURN
  1935. $ !
  1936. $! RGB output
  1937. $ JPEG_DEV: 
  1938. $   GOSUB JPEG_INI
  1939. $   GOSUB SDCTE_DEV
  1940. $   SETDEV jpeg "''jpeg_'"
  1941. $   ADDMOD jpeg -include sdcte
  1942. $   RETURN
  1943. $ !
  1944. $! Gray output
  1945. $ JPEGGRAY_DEV:
  1946. $   GOSUB JPEG_INI
  1947. $   GOSUB SDCTE_DEV
  1948. $   SETDEV jpeggray "''jpeg_'"
  1949. $   ADDMOD jpeggray -include sdcte
  1950. $   RETURN
  1951. $ !
  1952. $ PCXDEV_INIT:
  1953. $   pcx_ = "gdevpcx.obj gdevpccm.obj gdevprn.obj"
  1954. $   GOSUB CLIST_DEV
  1955. $   ADD_DEV_MODULES = "''pcx_'"
  1956. $   GOSUB ADD_DEV_MOD
  1957. $   RETURN
  1958. $ !
  1959. $ PCXMONO_DEV:
  1960. $   IF F$TYPE(pcx_) .EQS. "" THEN GOSUB PCXDEV_INIT
  1961. $   SETDEV pcxmono 'pcx_'
  1962. $   RETURN
  1963. $ !
  1964. $ PCXGRAY_DEV:
  1965. $   IF F$TYPE(pcx_) .EQS. "" THEN GOSUB PCXDEV_INIT
  1966. $   SETDEV pcxgray 'pcx_'
  1967. $   RETURN
  1968. $ !
  1969. $ PCX16_DEV:
  1970. $   IF F$TYPE(pcx_) .EQS. "" THEN GOSUB PCXDEV_INIT
  1971. $   SETDEV pcx16 'pcx_'
  1972. $   RETURN
  1973. $ !
  1974. $ PCX256_DEV:
  1975. $   IF F$TYPE(pcx_) .EQS. "" THEN GOSUB PCXDEV_INIT
  1976. $   SETDEV pcx256 'pcx_'
  1977. $   RETURN
  1978. $ !
  1979. $ PCX24B_DEV:
  1980. $   IF F$TYPE(pcx_) .EQS. "" THEN GOSUB PCXDEV_INIT
  1981. $   SETDEV pcx24b 'pcx_'
  1982. $   RETURN
  1983. $ !
  1984. $ PCXCMYK_DEV:
  1985. $   IF F$TYPE(pcx_) .EQS. "" THEN GOSUB PCXDEV_INIT
  1986. $   SETDEV pcxcmyk 'pcx_'
  1987. $   RETURN
  1988. $ !
  1989. $! The 2-up PCX device is also here only as an example, and for testing.
  1990. $ PCX2UP_DEV:
  1991. $   GOSUB PCX256_DEV
  1992. $   SETDEV pcx2up "gdevp2up.obj"
  1993. $   ADDMOD pcx2up -include pcx256
  1994. $   ADD_DEV_MODULES = "gdev2up.obj gdevprn.obj"
  1995. $   GOSUB ADD_DEV_MOD
  1996. $   RETURN
  1997. $ !
  1998. $! ### ------------------- Portable Bitmap file formats ------------------- ###
  1999. $ PBMDEV_INIT:
  2000. $   pxm_ = "gdevpbm.obj gdevprn.obj"
  2001. $   GOSUB CLIST_DEV
  2002. $   ADD_DEV_MODULES = "''pxm_'"
  2003. $   GOSUB ADD_DEV_MOD
  2004. $   RETURN
  2005. $ !
  2006. $ PBM_DEV:
  2007. $   IF F$TYPE(pxm_) .EQS. "" THEN GOSUB PBMDEV_INIT
  2008. $   SETDEV pbm 'pxm_'
  2009. $   RETURN
  2010. $ !
  2011. $ PBMRAW_DEV:
  2012. $   IF F$TYPE(pxm_) .EQS. "" THEN GOSUB PBMDEV_INIT
  2013. $   SETDEV pbmraw 'pxm_'
  2014. $   RETURN
  2015. $ !
  2016. $ PGM_DEV:
  2017. $   IF F$TYPE(pxm_) .EQS. "" THEN GOSUB PBMDEV_INIT
  2018. $   SETDEV pgm 'pxm_'
  2019. $   RETURN
  2020. $ !
  2021. $ PGMRAW_DEV:
  2022. $   IF F$TYPE(pxm_) .EQS. "" THEN GOSUB PBMDEV_INIT
  2023. $   SETDEV pgmraw 'pxm_'
  2024. $   RETURN
  2025. $ !
  2026. $ PGNM_DEV:
  2027. $   IF F$TYPE(pxm_) .EQS. "" THEN GOSUB PBMDEV_INIT
  2028. $   SETDEV pgnm 'pxm_'
  2029. $   RETURN
  2030. $ !
  2031. $ PGNMRAW_DEV:
  2032. $   IF F$TYPE(pxm_) .EQS. "" THEN GOSUB PBMDEV_INIT
  2033. $   SETDEV pgnmraw 'pxm_'
  2034. $   RETURN
  2035. $ !
  2036. $ PPM_DEV:
  2037. $   IF F$TYPE(pxm_) .EQS. "" THEN GOSUB PBMDEV_INIT
  2038. $   SETDEV ppm 'pxm_'
  2039. $   RETURN
  2040. $ !
  2041. $ PPMRAW_DEV:
  2042. $   IF F$TYPE(pxm_) .EQS. "" THEN GOSUB PBMDEV_INIT
  2043. $   SETDEV ppmraw 'pxm_'
  2044. $   RETURN
  2045. $ !
  2046. $ PNM_DEV:
  2047. $   IF F$TYPE(pxm_) .EQS. "" THEN GOSUB PBMDEV_INIT
  2048. $   SETDEV pnm 'pxm_'
  2049. $   RETURN
  2050. $ !
  2051. $ PNMRAW_DEV:
  2052. $   IF F$TYPE(pxm_) .EQS. "" THEN GOSUB PBMDEV_INIT
  2053. $   SETDEV pnmraw 'pxm_'
  2054. $   RETURN
  2055. $ !
  2056. $ PNGMONO_DEV:
  2057. $   IF F$TYPE(png_) .EQS. "" THEN GOSUB LIBPNG_DEV
  2058. $   SETDEV pngmono 'png_'
  2059. $   ADDMOD pngmono  -include libpng
  2060. $   RETURN
  2061. $ !
  2062. $ PNGGRAY_DEV:
  2063. $   IF F$TYPE(png_) .EQS. "" THEN GOSUB LIBPNG_DEV
  2064. $   SETDEV pnggray 'png_'
  2065. $   ADDMOD pnggray  -include libpng
  2066. $   RETURN
  2067. $ !
  2068. $ PNG16_DEV:
  2069. $   IF F$TYPE(png_) .EQS. "" THEN GOSUB LIBPNG_DEV
  2070. $   SETDEV png16 'png_'
  2071. $   ADDMOD png16  -include libpng
  2072. $   RETURN
  2073. $ !
  2074. $ PNG256_DEV:
  2075. $   IF F$TYPE(png_) .EQS. "" THEN GOSUB LIBPNG_DEV
  2076. $   SETDEV png256 'png_'
  2077. $   ADDMOD png256  -include libpng
  2078. $   RETURN
  2079. $ !
  2080. $ PNG16M_DEV:
  2081. $   IF F$TYPE(png_) .EQS. "" THEN GOSUB LIBPNG_DEV
  2082. $   SETDEV png16m 'png_'
  2083. $   ADDMOD png16m  -include libpng
  2084. $   RETURN
  2085. $ !
  2086. $ PSMONO_DEV:
  2087. $   ps_ = "gdevpsim.obj gdevprn.obj"
  2088. $   GOSUB CLIST_DEV
  2089. $   SETDEV psmono 'ps_'
  2090. $   ADD_DEV_MODULES = "''ps_'"
  2091. $   GOSUB ADD_DEV_MOD
  2092. $   RETURN
  2093. $ !
  2094. $ PSGRAY_DEV:
  2095. $   ps_ = "gdevpsim.obj gdevprn.obj"
  2096. $   GOSUB CLIST_DEV
  2097. $   SETDEV psgray 'ps_'
  2098. $   ADD_DEV_MODULES = "''ps_'"
  2099. $   GOSUB ADD_DEV_MOD
  2100. $   RETURN
  2101. $ !
  2102. $ TFAX_DEV:
  2103. $   tfax_ = "gdevtfax.obj gdevprn.obj"
  2104. $   GOSUB CLIST_DEV
  2105. $   GOSUB CFE_DEV
  2106. $   GOSUB LZWE_DEV
  2107. $   GOSUB RLE_DEV
  2108. $   GOSUB TIFFS_DEV
  2109. $   SETMOD tfax 'tfax_'
  2110. $   ADDMOD tfax -include cfe lzwe rle tiffs
  2111. $   ADD_DEV_MODULES = "''tfax_'"
  2112. $   GOSUB ADD_DEV_MOD
  2113. $   RETURN
  2114. $ !
  2115. $ FAXG3_DEV:
  2116. $   IF F$TYPE(tfax_) .EQS. "" THEN GOSUB TFAX_DEV
  2117. $   SETDEV faxg3 -include tfax
  2118. $   RETURN
  2119. $ !
  2120. $ FAXG32D_DEV:
  2121. $   IF F$TYPE(tfax_) .EQS. "" THEN GOSUB TFAX_DEV
  2122. $   SETDEV faxg32d -include tfax
  2123. $   RETURN
  2124. $ !
  2125. $ FAXG4_DEV:
  2126. $   IF F$TYPE(tfax_) .EQS. "" THEN GOSUB TFAX_DEV
  2127. $   SETDEV faxg4 -include tfax
  2128. $   RETURN
  2129. $ !
  2130. $ TIFFS_DEV:
  2131. $   IF F$TYPE(tiffs_) .NES. "" THEN RETURN
  2132. $   tiffs_ = "gdevtifs.obj gdevprn.obj"
  2133. $   GOSUB CLIST_DEV
  2134. $   SETMOD tiffs 'tiffs_'
  2135. $   ADD_DEV_MODULES = "''tiffs_'"
  2136. $   GOSUB ADD_DEV_MOD
  2137. $   RETURN
  2138. $ !
  2139. $ TIFFCRLE_DEV:
  2140. $   IF F$TYPE(tfax_) .EQS. "" THEN GOSUB TFAX_DEV
  2141. $   SETDEV tiffcrle -include tfax
  2142. $   RETURN
  2143. $ !
  2144. $ TIFFG3_DEV:
  2145. $   IF F$TYPE(tfax_) .EQS. "" THEN GOSUB TFAX_DEV
  2146. $   SETDEV tiffg3 -include tfax
  2147. $   RETURN
  2148. $ !
  2149. $ TIFFG32D_DEV:
  2150. $   IF F$TYPE(tfax_) .EQS. "" THEN GOSUB TFAX_DEV
  2151. $   SETDEV tiffg32d -include tfax
  2152. $   RETURN
  2153. $ !
  2154. $ TIFFG4_DEV:
  2155. $   IF F$TYPE(tfax_) .EQS. "" THEN GOSUB TFAX_DEV
  2156. $   SETDEV tiffg4 -include tfax
  2157. $   RETURN
  2158. $ !
  2159. $ TIFFLZW_DEV:
  2160. $   IF F$TYPE(tfax_) .EQS. "" THEN GOSUB TFAX_DEV
  2161. $   SETDEV tifflzw -include tfax
  2162. $   RETURN
  2163. $ !
  2164. $ TIFFPACK_DEV:
  2165. $   IF F$TYPE(tfax_) .EQS. "" THEN GOSUB TFAX_DEV
  2166. $   SETDEV tiffpack -include tfax
  2167. $   RETURN
  2168. $ !
  2169. $ TIFF12NC_DEV:
  2170. $   tiff12nc_ = "gdevtfnx.obj gdevtifs.obj gdevprn.obj"
  2171. $   GOSUB CLIST_DEV
  2172. $   SETDEV tiff12nc 'tiff12nc_'
  2173. $   ADD_DEV_MODULES = "''tiff12nc_'"
  2174. $   GOSUB ADD_DEV_MOD
  2175. $   RETURN
  2176. $ !
  2177. $ TIFF24NC_DEV:
  2178. $   tiff24nc_ = "gdevtfnx.obj gdevtifs.obj gdevprn.obj"
  2179. $   GOSUB CLIST_DEV
  2180. $   SETDEV tiff24nc 'tiff24nc_'
  2181. $   ADD_DEV_MODULES = "''tiff24nc_'"
  2182. $   GOSUB ADD_DEV_MOD
  2183. $   RETURN
  2184. $ !
  2185. $ VMS_DEV:
  2186. $   vms__ = "gp_nofb.obj gp_vms.obj"
  2187. $   SETMOD vms_ 'vms__'
  2188. $   ADD_DEV_MODULES = "''vms__'"
  2189. $   GOSUB ADD_DEV_MOD
  2190. $   RETURN
  2191. $ !
  2192. $ ADD_DEV_MOD:
  2193. $   II = 0
  2194. $   ADD_MORE:
  2195. $     DEV_NOW = F$EDIT(F$ELEMENT(II," ",ADD_DEV_MODULES),"UPCASE") - ".OBJ"
  2196. $     IF DEV_NOW .EQS. " " THEN RETURN
  2197. $     II = II + 1
  2198. $     ! add delimiters to avoid mistaken identities
  2199. $     ! (e.g., a search for "x11" finding "x11alpha")
  2200. $     IF F$LOCATE(" "+DEV_NOW+" ",DEV_MODULES) .NE. F$LENGTH(DEV_MODULES) THEN -
  2201.         GOTO ADD_MORE
  2202. $     NDEVL = 0
  2203. $  CHECK_LOOP:
  2204. $     IF F$Type(DEV_MODULES'NDEVL') .EQS. "" THEN GOTO ADD_THIS
  2205. $     IF F$LOCATE(" "+DEV_NOW+" ",DEV_MODULES'NDEVL') .NE. -
  2206.         F$LENGTH(DEV_MODULES'NDEVL') THEN GOTO ADD_MORE
  2207. $     NDEVL = NDEVL + 1
  2208. $     IF NDEVL .LE. NDEV_MOD THEN GOTO CHECK_LOOP
  2209. $  ADD_THIS:
  2210. $     DEV_MODULES = DEV_MODULES + DEV_NOW + " "
  2211. $     IF F$Length(DEV_MODULES) .GT. 512
  2212. $      THEN
  2213. $       DEV_MODULES = F$EDIT(DEV_MODULES,"TRIM")
  2214. $       DEV_MODULES = F$EDIT(DEV_MODULES,"COMPRESS")
  2215. $       DEV_MODULES'NDEV_MOD' = DEV_MODULES + " "
  2216. $       NDEV_MOD = NDEV_MOD + 1
  2217. $       DEV_MODULES = " "
  2218. $      ENDIF
  2219. $     GOTO ADD_MORE
  2220. $ !
  2221. $ DONE:
  2222. $ !
  2223. $ IF P1 .EQS. "DEBUG" .OR. P2 .EQS. "DEBUG" THEN GOTO AFTER_DEL
  2224. $ DELETE *.DEV;*
  2225. $ IF F$SEARCH("DEVS.TR")       .NES. "" THEN DELETE DEVS.TR;*
  2226. $ IF F$SEARCH("ECHOGS.EXE")    .NES. "" THEN DELETE ECHOGS.EXE;*
  2227. $ IF F$SEARCH("GENCONF.EXE")   .NES. "" THEN DELETE GENCONF.EXE;*
  2228. $ IF F$SEARCH("GSSETDEV.COM")  .NES. "" THEN DELETE GSSETDEV.COM;*,-
  2229.    GSSETMOD.COM;*,GSADDMOD.COM;*
  2230. $ IF F$SEARCH("JCONFIG.H")     .NES. "" THEN DELETE JCONFIG.H;*,JMORECFG.H;*,-
  2231.    JMCORIG.H;*,JERROR.H;*,JINCLUDE.H;*,JPEGLIB.H;*,JVERSION.H;*
  2232. $ IF F$SEARCH("PNG.H")         .NES. "" THEN DELETE PNG.H;*,PNGCONF.H;*
  2233. $ IF F$SEARCH("ZCONF.H")       .NES. "" THEN DELETE ZCONF.H;*,ZLIB.H;*,-
  2234.    ZUTIL.H;*,DEFLATE.H;*
  2235. $AFTER_DEL:
  2236. $ IF F$LOGICAL("OPT_FILE")     .NES. "" THEN CLOSE OPT_FILE
  2237. $ IF F$LOGICAL("X11")          .NES. "" THEN DEASSIGN X11
  2238. $ !
  2239. $ ! ALL DONE
  2240. $ EXIT
  2241. $ !
  2242. $ NO_ACTION:
  2243. $ !
  2244. $ WSO "No such device routine: ''ACTION'"
  2245. $ GOTO DONE
  2246.